返回动态列表
数之元“创享会”第三期——IT技术分享
发布时间:2016-08-01 00:00

主持人语:IRD是公司第一个有IT开发能力的部门,此次的分享人赵华东是第一个IT技术员工。之前公司内部分享都是基于我们的咨询能力,例如介绍一些新的商业模式等等,但其实我认为所有商业模式都是基于技术,未来每个公司都是IT公司。所以我们每位同事其实也需要关注一些IT技术。

本次IT技术分享的定位是每个人都听得懂,中间尽量不使用太专业的词汇和太复杂的逻辑。

IT人的吐槽

本次分享主要是让大家认识一下什么是技术,什么是IT,这些和我们的生活有什么关系。

首先是一段开心小爆料,简单介绍一下什么是IT界,IT人士是什么样的。IT人士其实不局限于说会写代码才叫IT,其实很多包括数据分析师、产品经理和UI设计师都算IT界人士。

IT界流传着这样的顺口溜,

数据分析师有三宝:SQL,EXCEL,PPT;

产品经理有三宝:山寨、改版、再推倒;

项目经理有三宝:进度、流程、做报表;

UI设计师有三宝:修改、重做、飞机稿;

苦逼程序员有三宝:屌丝、加班、修电脑。

为什么说程序员苦逼呢?入行前大家都以雷军这样的程序员为偶像,觉得程序员是高科技高收入的高大上职业,但现实是不断地加班让我们变成苦逼的屌丝。程序员要加班也不光是因为来不及的问题,而是像京东淘宝这样的网站,新功能的测试部署肯定都要放在半夜用户少的时候进行,所以不得不加班。

1.png

程序员苦逼所以需要有自我激励,我也一直被这样一句话激励着:只要代码写得好,你的女朋友正在高考!在这方面,刘强东是我们的偶像。

7.png

说程序员屌丝是有调研数据为证的,数据统计中国屌丝群体的行业分布中,屌丝认同度最高的职业就是程序员,高达97.39%。

IT行业大多都很辛苦,“朝九晚五”只是听说过,很多IT人都没有见过,这是大家都知道的事实。那么,不排除某些程序员需要在苦中找乐子,好让辛苦的工作多一份乐趣,这当然是可以理解的了,生活总不能像程序一样执行。而正因为IT行业很辛苦,整天只能与机器打交道,慢慢地就不想跟人说话、不想出门,经常就会有程序员在社交网络吐槽。

8.jpg

程序员自嘲为程序猿,形容IT人呆板、情商低;还自称码农,形容工作跟农民一样辛苦且赚不到钱。特别对于西安的程序员来说是这样,因为西安软件行业都是维护性开发,用建筑比喻就是,建筑设计师已经设计好了,程序员只用像码农只码砖。在行外的人印象中的高薪行业,行内却有不少人并没有拿到高薪;行外的人觉得这是一个精英行业,而行内不少人认为自己跟工地上的搬砖工差不多。在中国,很少有程序员把自己自称为工程师,在这些人中,要么是担心这个标签 给自己带来太大的压力,而自己的能力不匹配;要么就是希望外界把自己当做一名普通的写程序的人员;还有一种就是,希望外界不要称呼他们“程序猿”或者“码农”,他们不喜欢被这样调侃,但也不希望被高估,就喜欢低调行事。    

程序员的奋斗历程就是从程序员到软件架构师再到项目经理,这也是我个人的一个奋斗目标。

2.png

开发语言

下面简单介绍一下开发语言。

汇编语言

说到汇编语言的产生,首先要讲一下机器语言。机器语言是机器指令的集合。机器指令展开来讲就是一台机器可以正确执行的命令。电子计算机的机器指令是一列二进制数字。计算机将之转变为一列高低电平,以使计算机的电子器件受到驱动,进行运算。汇编语言的主体是汇编指令。汇编指令和机器指令的差别在于指令的表示方法上。汇编指令是机器指令便于记忆的书写格式。

3.png

C语言

C语言之所以命名为C,是因为 C语言源自Ken Thompson发明的B语言,而 B语言则源自BCPL语言。C语言是在70年代初问世的,一九七八年由美国电话电报公司(AT&T)贝尔实验室正式发表了C语言。C语言是一种通用的命令式编程语言,于上个世纪70年代开发,是最古老的使用最广泛的语言。为其他语言提供了构建模块。所以C语言在开发界被称为“语言之父”。

C语言是一门面向流程的编程语言,通俗的说就像政府办事,必须一层一层往下走,如果A部门没有盖章,那么B部门也不会给你盖章。因此人们逐渐对C语言感到疲惫不堪。首先,C过于针对底层需求,仅仅执行简单任务就需要大量指令。其次,可移植性差,这意味着针对PC撰写的代码无法便捷地移植到小型设备或大型主机中去运行。C语言的种种弊端最终催生出新一代编程语言。

C++语言

C++是在C语言的基础上开发的一种面向对象编程语言,应用广泛;C++支持多种编程范式——面向对象编程、泛型编程和过程化编程。所谓泛型编程就是每一个变量都必须定义它的数据格式,如浮点型、字符型等等。虽然每次定义很麻烦,但避免将来出现变量类型错误。C++一般作为服务器端开发。

C++的优点是运行速度快,效率高;缺点是语言本身过于复杂,C++编译系统受C++语言的复杂性影响非常难于编写,即使有问题也难于被发现。

SQL语言

SQL是Structured Query Language(结构化查询语言)的缩写。SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言。在使用它时,只需要发出“做什么”的命令,“怎么做”是不用使用者考虑的。SQL功能强大、简单易学、使用方便,已经成为了数据库操作的基础,并且现在几乎所有的数据库均支持SQL。

JavaScript语言

JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。

JS虽然是前端,但不是展示页面,而是展示数据的。真正前端UI展示的代码是打不开后台数据的。西安招前端很难,因为西安的软件公司虽多,但没有真正做自己的软件,都是做别人的二次开发,因此很多公司不需要招前端团队。但软件对IT行业的要求特别怪,前两年精通java就啥都不用学了,现在要求全栈工程师,前端后台数据库都得会。

下面重点介绍一下我吃饭的家伙:Java。Java是一个由Sun公司开发而成的新一代编程语言。使用它可在各式各样不同种机器、不同种操作平台的网络环境中开发软件。不论你使用的是哪一种WWW浏览器,哪一种计算机,哪一种操作系统,只要WWW浏览器上面注明了“支持Java”,你就可以看到生动的主页。Java正在逐步成为Internet应用的主要开发语言。它彻底改变了应用软件的开发模式,带来了自PC机以来又一次技术革命,为迅速发展的信息世界增添了新的活力。

这里大家要对软件有一个更深刻的认识,并不是下载到桌面上的软件才是软件,其实你访问互联网的网站也是软件,只是部署在他们的服务器上而已,因此浏览器访问互联网也是在使用软件。java之所以快速发展是因为互联网的发展,Java的种种特性特别适合互联网。

Java的特性有:①跨平台性,无论Windows, MacOS还是Linux都可以使用;②面向对象,前面介绍C++时已经说了,Java也是一个面向对象的编程语言;③安全性,C和C++虽然比Java跑得快,但是安全性不如Java,比如有一个内存溢出的BUG会被黑客利用;④简单易用,因为Java的编译器特别完善。

最后对这么多编程语言做一个总结:编程语言只是工具,没有好坏之分。只要你采用相应的编程语言,高效的完成对应的工作,那目标就完成啦。我们无需抱怨这种编程语言的缺点,而应该报有接受的态度。任何编程语言的出现和存在都有它的合理性,如果不合理是经受不住时间的考验的。世间万物都具有双面性,只是看利多还是弊大。如果一个东西是十全十美,那我就毫不犹豫地告诉你,一种情况是它根本不存在,另一种情况是你还发现它的缺点。

软件的架构

软件设计分为如下几个步骤:

软件计划 à 需求分析和定义à 开发设计à软件实现à 软件测试à 软件运行维护

4.png

软件的架构分为前端、后台和数据库。

5.png


以饭店来做个比喻,前台就好比是服务员,是软件系统的表现层,服务员会给你展现菜的色香味,但不知道菜是怎么做出来的。后台就好比是厨师,是软件系统的业务逻辑层,是负责功能实现的。数据库就好比是采购员,是软件系统的数据访问层,负责存储和调用最基础的原材料。

6.png

前端开发就是根据UI页面开发出来静态页面。这里的页面值得就是我们通常浏览的网页。网页通常由三部分组成:HTML,CSS,JS

后台就是指软件的逻辑层和数据层。主要负责处理软件的逻辑业务关系、实现功能内部控制以及功能与功能之间的跳转切换控制,数据的读取和存储等操作

数据库好比人的大脑的记忆系统,没有了数据库就没有了记忆系统。主要的数据库有DB2,Oracle,mySQL和SQLServer。

附件下载:数之元-IT技术分享_赵华东20160718.ppt

返回动态列表