【Day 02】从零开始的 Line Chatbot 系统-序章 Part 2

认识一些软件开发的专业术语

在做软件专案的时候,常常会看到一些英文简写,像是 Day 01 讲到的 API,还有像是 IDE、SDK 等等术语。

那我们就接着昨天讲过的 API,再稍微介绍一下这些基本术语。

IDE

IDE,全称 Integrated Development Environment,或是 Integration Design Environment 也可以称为 Integration Debugging Environment。

嗯...英文,看起来都差不多,简单来讲,我们可以把 IDE 翻译成整合开发环境

那...

IDE 是要做甚麽的?

IDE 可以轻松的让工程师开发出一个专案,因为他可以整合在 coding 的时候需要的所有工具,透过这些工具可以大大的提高工程师的效率。

并且这些在 coding 的时候所需要的常用工具都会呈现在一个视窗内,也就是通常 IDE 都会是一个 GUI(Graphical User Interface,图形使用者介面)

Editor

开发一个专案最重要的地方当然是程序,所以我们需要一个编辑器(Editor),让我们从一个空白文件开始撰写 code。

而 IDE 可以根据对应的语言去高亮(Highlighting)对应的语法。

例如:

  • 如果我们使用一般文字编辑器
with open(path, 'r', encoding='utf-8') as f:
    output = json.load(f)
  • 如果有 IDE
with open(path, 'r', encoding='utf-8') as f:
    output = json.load(f)

这样的功能会使程序的可读性大大增加,效率一样大大增加!

Autocomplete

如果 IDE 知道你正在撰写甚麽语言,他可以预测你接下来可能要写的内容。(强大的 IDE 会有更强大的预测功能)


就像是我用了 Python 的 IDE,输入了 impo,就会出现以下的选项,这就是预测功能

Compiler

编译语言需要一个编译器(Compiler)。
以 C语言为例,我们需要先将程序码编译成 object code,再透过 linker 产生执行档 .exe。

而 IDE 可以一键进行 CompilerRun

Debugging

每个工程师不免在开发专案的时候会遇到最讨人厌的 bug,而 IDE 也会提供好用的侦错器(debugger),也可以在 compile 後,execute 前先找到错误的地方,中断执行。

小结

以上就是 IDE 的好处。

有些强大的 IDE 可以支援多种不同的语言,有些 IDE 仅针对特定语言。

找到好的 IDE,还有适合自己的 IDE 可以大大增加 coding 效率,这就是所谓 工欲善其事,必先利其器

SDK

下一个在软件开发常见的术语-SDK,Software Development Kit,中文翻译:软件开发套件。

SDK 被开发出来是为了减少工程师的工作量。

SDK 会包含整个软件在特定平台上开发的工具,会是一整个大包集合,同时 API 也有可能会被一起打包进 SDK 里面,同时 SDK 可以打包超过一个以上的 APIs。

假设你要开发一个 Windows 系统上的功能,我们就可以使用 Windows SDK,要开发 iOS 系统上的功能,我们可以使用 iOS SDK。使用这些 SDK 就可以在开始写程序前弄好该用的环境设定,这可以大大减少工程师的工作量。

API vs SDK

他们两者的差异就在於,SDK 是一个集大成的工具包(或可以称为工具箱,或是...工具人XD)

上面讲到,如果我们要开发 iOS 环境可以先使用 iOS SDK,里面就会包含多种 APIs,可单独使用或是互相呼叫,并且还会有 documentation(官方手册,我都这麽称呼它)供开发者参考,最後可能还有模拟器可以模拟在 iOS 环境上的

所以什麽时候会单独使用到 API?
当你是在网路开发一个功能,例如 Google Map API,我想在我的网页设计里加上 Google Map 的功能我就会去调用他们开发的 API 直接使用。


Day 02 字数有点多,才能让我们尽快进入 Line Chatbot 的主题!

Ref.


<<:  万事真能从影片完整复制学习吗?(教与学篇)

>>:  [Day02] Vue i18n - 导入 & 基础用法

[Tableau Public] day 9:分析前先处理一下原始资料吧

第九天,打完疫苗已经22小时,目前只有接种处抬手会酸痛,目前还没感受到其他副作用。不过头已经开始有点...

[Day30]ISO 27001 附录 A.18 遵循性

A.18 遵循性 A.18.1 对法律及契约要求事项之遵循 目标:避免违反有关资讯安全之法律、法令、...

CompTIA SY0-601 Braindumps - All About The SY0-601 Exam

Most of the aspiring professionals are getting cer...

Day 19 -HAVING 子句!

HAVING 子句是用来取代 WHERE 搭配聚合函数 (aggregate function) 进...

DAY 01 : 让企业拥有真正属於自己的ERP

说明、缘由 投入资讯产业约17年,历经过许多的程序语言,也投入过不同的行业别,5年前开始接触Odoo...