Logo
☆☆☆☆☆
0.0
Intermediate
30h

Go中的强大命令行应用程序

Go 是一种编程语言,融合了静态类型的安全性与动态类型的灵活性。其简洁的语法和快速原型开发能力,使其成为构建命令行工具的理想选择。Go 还提供了类型安全、跨平台编译、测试和基准测试等功能,帮助开发者应对复杂的开发场景。 你将从 Go 的基础语法开始学习,逐步深入掌握高级概念。随后,你将学会开发多种命令行应用程序,用于自动化任务、处理数据、解析日志、与网络服务交互以及满足系统需求。此外,课程还将介绍多种测试与性能基准测试技术,以确保程序的高效与可靠。 完成本课程后,你将能够自动化日常工作流程,显著提升工作效率。同时,你也将具备使用 Go 语言开发健壮、跨平台、高效且易于维护的命令行应用的能力。

13 Lessons
Included in Subscription Plan
Personalized Learning
Powered by AI
Go中的强大命令行应用程序
Go 是一种编程语言,融合了静态类型的安全性与动态类型的灵活性。其简洁的语法和快速原型开发能力,使其成为构建命令行工具的理想选择。Go 还提供了类型安全、跨平台编译、测试和基准测试等功能,帮助开发者应对复杂的开发场景。 你将从 Go 的基础语法开始学习,逐步深入掌握高级概念。随后,你将学会开发多种...

WHAT YOU'LL LEARN

对 Go 编程语言基础的理解,包括其语法和数据类型

Content

13 Lessons • 0 Quizzes • 0 Challenges

简介
  1. 1

    关于 Go 语言

  2. 2

    课程简介

Go 的第一个命令行程序
  1. 1

    构建一个基本的词频统计工具

  2. 2

    测试基本词频统计器

  3. 3

    命令行标志

  4. 4

    总结

  5. 5

    练习:统计 Unicode 字符

  6. 6

    解决方案:统计Unicode字符

  7. 7

    测验:Go 命令行程序入门

与用户交互
  1. 1

    定义待办事项API

  2. 2

    创建待办事项文件

  3. 3

    创建待办事项测试文件

  4. 4

    创建初始的待办事项命令行工具

  5. 5

    测试初始的命令行界面实现

  6. 6

    处理多个命令行选项

  7. 7

    显示命令行工具用法

  8. 8

    改进列表输出格式

  9. 9

    通过环境变量提升灵活性

  10. 10

    从标准输入捕获输入

  11. 11

    总结

  12. 12

    练习:删除待办事项

  13. 13

    解决方案:删除待办事项

  14. 14

    测验:与用户交互

Go 中的文件操作
  1. 1

    创建一个基本的 Markdown 预览工具

  2. 2

    为 Markdown 预览工具编写测试

  3. 3

    将临时文件添加到 Markdown 预览工具

  4. 4

    使用接口自动化测试

  5. 5

    添加自动预览功能

  6. 6

    清理临时文件

  7. 7

    通过模板优化 Markdown 预览工具

  8. 8

    更新函数以优化 Markdown 预览工具

  9. 9

    总结

  10. 10

    练习:文件操作

  11. 11

    解决方案:文件操作

  12. 12

    测验:在 Go 中处理文件

浏览文件系统
  1. 1

    开发一个文件系统爬虫

  2. 2

    使用表格驱动测试

  3. 3

    删除匹配的文件

  4. 4

    借助测试辅助工具进行测试

  5. 5

    记录已删除的文件

  6. 6

    归档文件

  7. 7

    更新函数以归档文件

  8. 8

    总结

  9. 9

    练习:恢复文件和目录

  10. 10

    解决方案:恢复文件和目录

  11. 11

    测验:导航文件系统

提升命令行工具的性能
  1. 1

    colStats 简介

  2. 2

    开发 colStats 的初始版本

  3. 3

    初始版本 colStats 的最后完善

  4. 4

    编写 colStats 的测试

  5. 5

    测试 colStats

  6. 6

    基准测试我们的工具

  7. 7

    分析我们的工具

  8. 8

    减少内存分配

  9. 9

    改进 colStats 工具以实现文件的并发处理

  10. 10

    减少调度竞争

  11. 11

    总结

  12. 12

    练习:函数性能测试

  13. 13

    解决方案:函数性能测试

  14. 14

    测验:提升命令行工具的性能

控制进程
  1. 1

    执行外部程序

  2. 2

    处理错误

  3. 3

    编写 Goci 的测试

  4. 4

    定义一个流水线

  5. 5

    更新流水线

  6. 6

    处理外部程序的输出

  7. 7

    使用上下文运行命令

  8. 8

    使用本地 Git 服务器进行集成测试

  9. 9

    使用模拟资源测试命令

  10. 10

    处理信号

  11. 11

    总结

  12. 12

    练习:捕获和解析命令输出

  13. 13

    解决方案:捕获和解析命令输出

  14. 14

    测验:进程控制

使用 Cobra 命令行框架
  1. 1

    启动 Cobra 应用程序

  2. 2

    探索新的 Cobra 应用程序

  3. 3

    向应用程序添加第一个子命令

  4. 4

    开始扫描包

  5. 5

    创建用于管理主机的子命令

  6. 6

    在 Hosts 子命令下管理主机列表

  7. 7

    测试管理主机子命令

  8. 8

    添加端口扫描功能

  9. 9

    测试端口扫描功能

  10. 10

    更新端口扫描功能

  11. 11

    使用 Viper 进行配置管理

  12. 12

    生成命令补全和文档

  13. 13

    总结

  14. 14

    练习:添加和验证标志

  15. 15

    解决方案:添加和验证标志

  16. 16

    测验:使用 Cobra CLI 框架

与 REST API 通信
  1. 1

    开发一个 REST API 服务器

  2. 2

    测试 REST API 服务器

  3. 3

    完成 REST API 服务器

  4. 4

    为REST API服务器添加收尾细节

  5. 5

    开发 REST API 的初始客户端

  6. 6

    为 REST API 的初始客户端添加收尾细节

  7. 7

    在不连接API的情况下测试客户端

  8. 8

    查看单个项目

  9. 9

    添加项目

  10. 10

    本地测试 HTTP 请求

  11. 11

    完成和删除项目

  12. 12

    执行集成测试

  13. 13

    总结

  14. 14

    练习:通过互联网与REST API进行通信

  15. 15

    解决方案:通过互联网与REST API进行通信

  16. 16

    测验:与REST API通信

开发交互式终端工具
  1. 1

    概述:开发交互式终端工具

  2. 2

    初始化番茄工作法应用程序

  3. 3

    使用仓储模式存储数据

  4. 4

    测试番茄工作法功能

  5. 5

    构建界面控件

  6. 6

    创建开始和暂停按钮

  7. 7

    构建交互式界面

  8. 8

    使用 Cobra 初始化 CLI

  9. 9

    总结

  10. 10

    练习:交互式终端应用程序

  11. 11

    解决方案:交互式终端应用程序

  12. 12

    测验:开发交互式终端工具

在SQL数据库中持久化数据
  1. 1

    在数据库中持久化数据

  2. 2

    使用 SQLite 测试仓库

  3. 3

    更新应用程序以使用 SQLite 仓库

  4. 4

    向用户显示摘要

  5. 5

    向用户展示历史数据

  6. 6

    总结

  7. 7

    练习:数据库

  8. 8

    解决方案:数据库

  9. 9

    测验:在SQL数据库中持久化数据

分发工具
  1. 1

    开始使用 Notify 包

  2. 2

    在构建过程中包含操作系统特定的文件

  3. 3

    测试 Notify 包

  4. 4

    条件性构建应用程序

  5. 5

    总结

  6. 6

    练习:支持多种操作系统

  7. 7

    解决方案:支持多种操作系统

  8. 8

    测验:分发工具

附录
  1. 1

    追踪我们的工具

  2. 2

    开始使用 SQLite

  3. 3

    Go、SQL 和 SQLite

  4. 4

    为容器编译 Go 应用程序

Certificate of Completion

Showcase your accomplishment by sharing your certificate of completion.

Course Author:Anonymous User

Reviews

Read reviews from students who have taken this course and share your own experience.

Reviews & Comments (0)