遇到的困难
因为是第一次接触博客与markdown语法编辑,所以在在如何使用博客园写随笔以及如何设置与使用markdown语法中来来回回看了好多次教程才成功使用。
工具软件认识及看法、学习过程
markdown简介:
Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式。
Markdown具有一系列衍生版本,用于扩展Markdown的功能(如表格、脚注、内嵌HTML等等),这些功能原初的Markdown尚不具备,它们能让Markdown转换成更多的格式,例如LaTeX,Docbook。Markdown增强版中比较有名的有Markdown Extra、MultiMarkdown、 Maruku等。这些衍生版本要么基于工具,如Pandoc;要么基于网站,如GitHub和Wikipedia,在语法上基本兼容,但在一些语法和渲染效果上有改动。
优点:
1、因为是纯文本,所以只要支持Markdown的地方都能获得一样的编辑效果,可以让作者摆脱排版的困扰,专心写作。
2、操作简单。
缺点:
1、需要记一些语法。
2、有些平台不支持Markdown编辑模式。
我认为markdown编辑器是一种很方便的编辑语言,我以后会多多尝试这种语音来编写博客。
概述内容读后感
我们首先要了解软件工程
数据结构+算法=程序
源程序:建立在数据结构上的一些算法,并且有人编译成机器能懂的目标代码,而编译不仅仅是 cc 和 link 命令,对于一个复杂的软件,我们不但要有合理的软件架构(Software Architecture), 软件设计和实现 (Software Design & Implementation), 我们还要用各种文件来描述各个程序文件之间的依赖关系,编译参数,链接参数,等等。这些都是软件的构建。
源代码管理 (Source Code Control) :为某个需求写一些特殊功能,然后不久要把这些功能再合并回主要版本,以保证软件在不断的修改中能保证质量,不至于崩溃。
软件的生命周期 (Software Life Cycle, SLC): 例如设计(软件架构),实现(写数据结构和算法),测试,到最后发布软件。
构建管理,源代码管理,软件设计, 软件测试,项目管理是软件工程的核心部分。广泛意义上的软件工程也包用户体验 (User Experience), 用户界面设计 (User Interface Design) 等
所以,软件 = 程序 + 软件工程
用航天产业的历史来与软件工程类比##
航空 | 软件 | 影响(如果成功/失败会如何) | 如何控制过程 (怎么一步步提高做事情的质量?) |
---|---|---|---|
玩具, 基本知识:纸飞机/航模 | 写程序练习数据结构/算法 | 影响自己,如果失败, 会减少对这类知识的兴趣。这类知识也有比赛,如航模比赛,程序算法比赛,但是比赛之后,这些算法高手写的程序的可维护性怎样? 有人会拿着程序去发布为商业软件么? | 对飞机头哈气, 再哈气... 看别的小孩怎么做飞机, 上航模课外小组... |
爱好者的尝试:气球+沙滩椅升空 | 用Javascript, Asp.Net, Ruby 写写网站 | 气球升空成功, 当地晚报会报道。程序能跑起来,自己博客写写。失败之后呢? 没关系,爱好者很快会捡起新的爱好。 | 研究各种工具, 做小实验。 |
先行者的探索:莱特兄弟飞行 | 软件业的创新 | 即使第一个版本的飞机只飞了36米,明白人还是看到了划时代的意义。很多软件原型也是这样。如果探索失败之后,会怎么样? 对于大部分创业者来说, 如果还有钱/机会的话,还要继续创新。 | 研究理论, 不断尝试 |
成熟的工业:飞机制造业:民航 | Taobao, Ali-pay, Win7 | 软件的发布会影响一个公司,一个行业,波及到相关的行业和人员。如果一个公司失败了, 很多人会失去饭碗 | 有完整和严格的过程控制理论和实践。 |
软件工程是什么?
软件工程是把系统的, 有序的, 可量化的方法应用到软件的开发, 运营, 和维护上的过程。
软件工程包括下列领域: 软件需求分析, 软件设计, 软件构建, 软件测试, 和软件维护.
软件工程和下列的学科相关:** 计算机科学, 计算机工程, 管理学, 数学, 项目管理学, 质量管理, 软件人体工学, 系统工程, 工业设计, 和用户界面设计.**
软件工程的bug
**软件的开发效率 **– 开发过程中bug 太多了, 导致软件无法按时交付;
用户满意度 – 用户使用时报告了很多bug, 纷纷表示对生活影响很大;
可靠性 – 这个软件经常会崩溃,这个操作系统会死机;
可维护性 – 这个软件太难维护了, 按下葫芦起了瓢, 修复了一个问题, 另一个问题又出来了。也没有足够的文档, 维护人员纷纷表示要把原作者找出来打一顿。
软件工程和计算机科学的关系
文章认为, 可以从形式上证明的, 多属于计算机科学; 和人的行为相关, 和计算机系统的具体实现相关, 则属于软件工程。中国大陆高校的“计算机科学”院系中 , 大部分老师做的是偏工程方面的研究, 大部分学生毕业后也投身于解决具体的工程问题, 这和软件学院,软件工程系的研究和培养方向非常雷同。