[190 楼] younker
[泡菜]
18-4-8 17:04
Python值得作为入门编程语言学习,而且可以作为以后深入的基础.
|
[189 楼] 索尼菜鸟
[泡菜]
18-4-8 17:02
长门大明神 发表于 2018-4-8 16:49  语言这东西,对于稍微成熟点的开发者来说就没有什么优劣之分,只有使用场景不同去选不同的工具。当然了,也有些人拿起锤子来看什么都像钉子。
编程这个工作发展到现在有多半个世纪的※※了,可以类比的就是开车。早些年间,司机是一个了不起的工作,没两把刷子的人根本干不了,不光要会开车,还要了解汽车的运作原理,甚至出现问题的时候要会自己修车。现在的司机,简单的连换挡都不用学了,控制好方向盘,会踩油门刹车就够了。但是人家一样可以正常的把车从一个地方开到另一个地方,这就够了。 这就是Black Box,你只需要知道如何操作,而无需知道其原理,否则所有事情都要亲历亲为,世界上的已有的知识就够学几万年的
|
[188 楼] 长门大明神
[泡菜]
18-4-8 16:57
索尼菜鸟 发表于 2018-4-8 16:54  不过Android仍然只是通用操作系统,不属于实时操作系统 android当然不是RTOS,不过现在设备装android也和linux没太多关系了,毕竟安卓的开发人员也不用太去关心linux里面到底是啥样的。
|
[187 楼] 索尼菜鸟
[泡菜]
18-4-8 16:54
长门大明神 发表于 2018-4-8 16:53  说起来,早年间的一个比较常用的嵌入式设备产品——播放器/电子词典/山寨手机,连这些都不会用linux去做内核(除了moto那个SB)。
也就这几年硬件发展的实在是太快了,各种智能设备层出不穷,才开始用linux的东西多了起来(实际上还是因为有android这东西) 不过Android仍然只是通用操作系统,不属于实时操作系统
|
[186 楼] 长门大明神
[泡菜]
18-4-8 16:53
索尼菜鸟 发表于 2018-4-8 16:35  你家里的空调跑Linux的?嵌入式操作系统主要用在工业控制和家电,比如VxWorks之类的RTOS,除了路由器你还懂什么? 说起来,早年间的一个比较常用的嵌入式设备产品——播放器/电子词典/山寨手机,连这些都不会用linux去做内核(除了moto那个SB)。 也就这几年硬件发展的实在是太快了,各种智能设备层出不穷,才开始用linux的东西多了起来(实际上还是因为有android这东西)
|
[185 楼] 长门大明神
[泡菜]
18-4-8 16:49
索尼菜鸟 发表于 2018-4-8 16:35  你家里的空调跑Linux的?嵌入式操作系统主要用在工业控制和家电,比如VxWorks之类的RTOS,除了路由器你还懂什么? 语言这东西,对于稍微成熟点的开发者来说就没有什么优劣之分,只有使用场景不同去选不同的工具。当然了,也有些人拿起锤子来看什么都像钉子。 编程这个工作发展到现在有多半个世纪的 ※※了,可以类比的就是开车。早些年间,司机是一个了不起的工作,没两把刷子的人根本干不了,不光要会开车,还要了解汽车的运作原理,甚至出现问题的时候要会自己修车。现在的司机,简单的连换挡都不用学了,控制好方向盘,会踩油门刹车就够了。但是人家一样可以正常的把车从一个地方开到另一个地方,这就够了。
|
[184 楼] 长门大明神
[泡菜]
18-4-8 16:45
arcsense 发表于 2018-4-8 16:34  wince早就停了,家庭路由器古时候还有用vxworks的,后来基本linux,例如openwrt。
Linux用在吞吐量优先的设备上能省不少事,但用在面向控制的设备就属于给自己找不自在。 linux在多线程/IO密集处理/第三方应用场景上有很多的优势。所以现在很多路由设备/网络存储设备/机顶盒设备等会用这东西。 但是在工控方面上,用途单一的场景用linux就是没事找事。
|
[183 楼] 索尼菜鸟
[泡菜]
18-4-8 16:35
我是ike 发表于 2018-4-8 14:10  你才是外行吧,现在什么时代了,还WinCE?哈哈
wince是2000年左右流行的!而且微软是要授权费的,你这说的还是pocketpc时代的事情!嵌入式系统都是以修改linux的居多!
还用的人极少?你知道你路由器里面跑的搞不好就是!
你懂就懂,不懂就不要误导人家。 你家里的空调跑Linux的?嵌入式操作系统主要用在工业控制和家电,比如VxWorks之类的RTOS,除了路由器你还懂什么? 本帖最后由 索尼菜鸟 于 2018-4-8 16:37 编辑
|
[182 楼] arcsense
[泡菜]
18-4-8 16:34
长门大明神 发表于 2018-04-08 06:46目前真正用于嵌入式设备的多数是各种RTOS,wince也少了,linux在某些不计较性能的场景下到也是不少用,不如各种nas/swi... wince早就停了,家庭路由器古时候还有用vxworks的,后来基本linux,例如openwrt。 Linux用在吞吐量优先的设备上能省不少事,但用在面向控制的设备就属于给自己找不自在。 本帖由安卓客户端发布
|
[181 楼] 长门大明神
[泡菜]
18-4-8 14:46
我是ike 发表于 2018-4-8 14:26  很简单,回答问题本身,学什么语言?
我觉得,既然耗费时间学,就学个以后可以用来最便于赚钱的吧。
你去招聘网站看看,对什么语言的程序员需求最大吧,绝对是Java! PHP笑而不语。
|
[180 楼] 长门大明神
[泡菜]
18-4-8 14:46
索尼菜鸟 发表于 2018-4-8 13:43  你是外行吧?嵌入式系统用WinCE的都比Linux多,linux是通用操作系统,虽然有专用于嵌入式的Linux版本,但是用的人极少 目前真正用于嵌入式设备的多数是各种RTOS,wince也少了,linux在某些不计较性能的场景下到也是不少用,不如各种nas/switcher一类的设备。
|
[179 楼] 长门大明神
[泡菜]
18-4-8 14:43
我是ike 发表于 2018-4-8 14:12  你去看看EJB吧,什么叫分布式,你自己先搞懂。
虽然EJB不被很多企业和组织待见,可是这是人家sun的分布式组件标准!  原来只有EJB才叫分布式。
|
[178 楼] 长门大明神
[泡菜]
18-4-8 14:43
我是ike 发表于 2018-4-8 14:19  你给我把数据结构的书的目录列一下,再自己看看你说的对不对!
链表,队列,栈,二叉树,图,不是数据结构而仅仅是一种教学手段而已?????????
另外,Java里面因为抽象程度高,主要谈的是对象的问题,你要谈数据结构,必须还是用汇编,pascal,c,c++这些过程语言去学。
“至于如何去操作并不一定需要自己去具体实现。” 你没学过或者用过汇编吧,如何操作你不懂就不要说了。位移操作,寄存器操作,估计你是没见过的。
编程 = 数据结构 + 算法永远都不过时 --- 这句话在我们读书的时代就已经过时了,这是6-70年代的提法了,后来的提法是模块化编程,编程 = 数据结构 + 算法------这是早期主要处理数值计算的时代的提法!后来程序主要处理的不是数值计算,而是业务逻辑,现在是什么时代了?还提什么:编程 = 数据结构 + 算法????????????????
业务处理的都是业务逻辑,算法都是人家计算机科学家早就设计好的,需要你去研究啥算法?
你要是能搞出个新的排序算法,你可以去拿图灵奖!
... 很简单,大学的数据结构为什么通常叫数据结构C,因为是用C语言来描述数据结构而已。数据结构的书,我深入看过的C,Pascal,Java各种语言描述的版本都有,我在大学教过的都以严蔚敏的那本为主,包括辅导学生考研时也是让他们去通读严蔚敏和吴伟民的那本书及习题集。语言才是我说的教学手段,因为需要把某种数据结构表现给学生。 另外,你确定是学CS专业的?二叉树,图的算法都是在离散数学里面真正深入去讲解的,数据结构里面只是介绍和使用。 至于算法问题,排序算法确实常用的这些就够了,你以为做开发只需要一个排序算法,我当初导师带的项目里面路由交换算法都是自己做优化的。
|
[177 楼] clamber
[泡菜]
18-4-8 14:26
我是ike 发表于 2018-4-8 14:26  很简单,回答问题本身,学什么语言?
我觉得,既然耗费时间学,就学个以后可以用来最便于赚钱的吧。
你去招聘网站看看,对什么语言的程序员需求最大吧,绝对是Java! 那就java和python都学吧。
|
[176 楼] 我是ike
[泡菜]
18-4-8 14:26
很简单,回答问题本身,学什么语言?
我觉得,既然耗费时间学,就学个以后可以用来最便于赚钱的吧。
你去招聘网站看看,对什么语言的程序员需求最大吧,绝对是Java!
|
[175 楼] 我是ike
[泡菜]
18-4-8 14:19
长门大明神 发表于 2018-4-8 13:21  第一:数据结构和内存中怎么存储无关,只和存储方式相关,所谓的内存寻址方式就是在最早期的年代大家约定使用的一种教学手段而已。就像现在如果用java去教学数据结构,还会讲怎么去操作指针么?而且在某些场景的数据结构中不一定是在内存上操作数据。再宽泛言之,数据结构是一个概念,只是让开发者知道数据应该是怎么存储的和访问的,至于如何去操作并不一定需要自己去具体实现。
第二:编程 = 数据结构 + 算法永远都不过时,只要编程还仍然是做问题空间映射到解空间的事情。反倒是你的说法学编程必须从C/汇编学起才是像交小孩子写字要先学软笔,再学硬笔一样可笑。 你给我把数据结构的书的目录列一下,再自己看看你说的对不对! 链表,队列,栈,二叉树,图,不是数据结构而仅仅是一种教学手段而已????????? 另外,Java里面因为抽象程度高,主要谈的是对象的问题,你要谈数据结构,必须还是用汇编,pascal,c,c++这些过程语言去学。 “至于如何去操作并不一定需要自己去具体实现。” 你没学过或者用过汇编吧,如何操作你不懂就不要说了。位移操作,寄存器操作,估计你是没见过的。 编程 = 数据结构 + 算法永远都不过时 --- 这句话在我们读书的时代就已经过时了,这是6-70年代的提法了,后来的提法是模块化编程,编程 = 数据结构 + 算法------这是早期主要处理数值计算的时代的提法!后来程序主要处理的不是数值计算,而是业务逻辑,现在是什么时代了?还提什么:编程 = 数据结构 + 算法???????????????? 业务处理的都是业务逻辑,算法都是人家计算机科学家早就设计好的,需要你去研究啥算法? 你要是能搞出个新的排序算法,你可以去拿图灵奖!
|
[174 楼] 我是ike
[泡菜]
18-4-8 14:12
长门大明神 发表于 2018-4-8 13:24  网银这种叫分布式
我真怀疑你明白什么是分布式么。 你去看看EJB吧,什么叫分布式,你自己先搞懂。 虽然EJB不被很多企业和组织待见,可是这是人家sun的分布式组件标准!
|
[173 楼] 我是ike
[泡菜]
18-4-8 14:11
长门大明神 发表于 2018-4-8 13:26  嵌入式要搞懂linux内核,你做过嵌入式开发么。
小10年前老夫做的时候,简单逻辑直接裸写C51,复杂的控制用usos,谁会用那么复杂的一个linux去搞啊。现在国内OS领先的基本上都是针对嵌入式应用的RTOS,没见多少去搞linux的。 你基本上知识还是停留在10年前,怪不得会说出这种话来。哈哈。
|
[172 楼] 我是ike
[泡菜]
18-4-8 14:10
索尼菜鸟 发表于 2018-4-8 13:43  你是外行吧?嵌入式系统用WinCE的都比Linux多,linux是通用操作系统,虽然有专用于嵌入式的Linux版本,但是用的人极少 你才是外行吧,现在什么时代了,还WinCE?哈哈 wince是2000年左右流行的!而且微软是要授权费的,你这说的还是pocketpc时代的事情!嵌入式系统都是以修改linux的居多! 还用的人极少?你知道你路由器里面跑的搞不好就是! 你懂就懂,不懂就不要误导人家。
|
[171 楼] 索尼菜鸟
[泡菜]
18-4-8 13:43
我是ike 发表于 2018-4-8 12:35  你这就是胡扯,面向过程的时候可以这么说,面向对象的时候还这么说,就是无知了。
嵌入式,必须搞懂内存,linux内核也要搞懂。其余的变成必须懂面向对象,设计模式,反模式等等了。
数据结构加算法,你也得懂内存中的布局,指针都搞不懂的,编个鬼的程。 你是外行吧?嵌入式系统用WinCE的都比Linux多,linux是通用操作系统,虽然有专用于嵌入式的Linux版本,但是用的人极少
|
[170 楼] 长门大明神
[泡菜]
18-4-8 13:26
我是ike 发表于 2018-4-8 12:35  你这就是胡扯,面向过程的时候可以这么说,面向对象的时候还这么说,就是无知了。
嵌入式,必须搞懂内存,linux内核也要搞懂。其余的变成必须懂面向对象,设计模式,反模式等等了。
数据结构加算法,你也得懂内存中的布局,指针都搞不懂的,编个鬼的程。 嵌入式要搞懂linux内核,你做过嵌入式开发么。 小10年前老夫做的时候,简单逻辑直接裸写C51,复杂的控制用usos,谁会用那么复杂的一个linux去搞啊。现在国内OS领先的基本上都是针对嵌入式应用的RTOS,没见多少去搞linux的。
|
[169 楼] 长门大明神
[泡菜]
18-4-8 13:24
我是ike 发表于 2018-4-8 12:37  哈哈
动态网站又不是非要分布式加高可用性。
搞个网银转账的,试一试吧。 网银这种叫分布式  我真怀疑你明白什么是分布式么。
|
[168 楼] 长门大明神
[泡菜]
18-4-8 13:21
我是ike 发表于 2018-4-8 12:39  第一,数据结构,你就得搞懂在内存中的布局,是链表,数组,二叉树,图,还是其他等等。
第二,编程 = 数据结构 + 算法,这是面向过程时代的笼统说法,现在谁还提这个!就像你今天说书写要用毛笔一样可笑。 第一:数据结构和内存中怎么存储无关,只和存储方式相关,所谓的内存寻址方式就是在最早期的年代大家约定使用的一种教学手段而已。就像现在如果用java去教学数据结构,还会讲怎么去操作指针么?而且在某些场景的数据结构中不一定是在内存上操作数据。再宽泛言之,数据结构是一个概念,只是让开发者知道数据应该是怎么存储的和访问的,至于如何去操作并不一定需要自己去具体实现。 第二:编程 = 数据结构 + 算法永远都不过时,只要编程还仍然是做问题空间映射到解空间的事情。反倒是你的说法学编程必须从C/汇编学起才是像交小孩子写字要先学软笔,再学硬笔一样可笑。
|
[167 楼] 我是ike
[泡菜]
18-4-8 12:39
长门大明神 发表于 2018-4-8 09:22  编程 = 数据结构 + 算法 编程的目的:用程序来实现问题空间到解空间的映射。
这两个没有一个需要你去了解计算机的内存是如何存储的,语句是如何执行的。
也就是说,不会以上两点根本不影响你编程。一个人的编程能力如何更大的程度是看如何用更优的数据结构和算法来完成问题空间到解空间的映射。这是编程的根本,至于其他的东西都是编程的技巧而已。
用摄影来举例:编程=摄影,目的是还原当时所见的场景,语言就是你使用的设备,无论是旁轴,单反还是傻瓜都不影响你去完成你的目标。至于更深入层次的了解只是让你在更复杂的情况下有更好的选择罢了,比如说熟练的使用指针在我看来就是用ISO100的胶卷迫冲出ISO400的效果,满足某些极端情况的特殊能力罢了。 第一,数据结构,你就得搞懂在内存中的布局,是链表,数组,二叉树,图,还是其他等等。 第二,编程 = 数据结构 + 算法,这是面向过程时代的笼统说法,现在谁还提这个!就像你今天说书写要用毛笔一样可笑。
|
[166 楼] 我是ike
[泡菜]
18-4-8 12:37
长门大明神 发表于 2018-4-8 09:24  某乎就是用python做的,有什么问题么? 哈哈 动态网站又不是非要分布式加高可用性。 搞个网银转账的,试一试吧。
|
[165 楼] 我是ike
[泡菜]
18-4-8 12:36
长门大明神 发表于 2018-4-8 09:22  编程 = 数据结构 + 算法 编程的目的:用程序来实现问题空间到解空间的映射。
这两个没有一个需要你去了解计算机的内存是如何存储的,语句是如何执行的。
也就是说,不会以上两点根本不影响你编程。一个人的编程能力如何更大的程度是看如何用更优的数据结构和算法来完成问题空间到解空间的映射。这是编程的根本,至于其他的东西都是编程的技巧而已。
用摄影来举例:编程=摄影,目的是还原当时所见的场景,语言就是你使用的设备,无论是旁轴,单反还是傻瓜都不影响你去完成你的目标。至于更深入层次的了解只是让你在更复杂的情况下有更好的选择罢了,比如说熟练的使用指针在我看来就是用ISO100的胶卷迫冲出ISO400的效果,满足某些极端情况的特殊能力罢了。 你这就是业余班子的奇谈怪论。
|
[164 楼] 我是ike
[泡菜]
18-4-8 12:35
clamber 发表于 2018-4-8 09:24  讲的很好。 你这就是胡扯,面向过程的时候可以这么说,面向对象的时候还这么说,就是无知了。 嵌入式,必须搞懂内存,linux内核也要搞懂。其余的变成必须懂面向对象,设计模式,反模式等等了。 数据结构加算法,你也得懂内存中的布局,指针都搞不懂的,编个鬼的程。
|
[163 楼] 长门大明神
[泡菜]
18-4-8 09:24
我是ike 发表于 2018-4-8 07:43  虽然是说起来是通用语言,可是你用它做一个分布式高可用性系统试一试?哈哈 某乎就是用python做的,有什么问题么?
|
[162 楼] clamber
[泡菜]
18-4-8 09:24
长门大明神 发表于 2018-04-08 01:22编程 = 数据结构 + 算法 编程的目的:用程序来实现问题空间到解空间的映射。
这两个没有一个需要你去了解计算机的内存是如何存储的,... 讲的很好。 本帖由安卓客户端发布
|
[161 楼] 长门大明神
[泡菜]
18-4-8 09:22
编程 = 数据结构 + 算法 编程的目的:用程序来实现问题空间到解空间的映射。
这两个没有一个需要你去了解计算机的内存是如何存储的,语句是如何执行的。
也就是说,不会以上两点根本不影响你编程。一个人的编程能力如何更大的程度是看如何用更优的数据结构和算法来完成问题空间到解空间的映射。这是编程的根本,至于其他的东西都是编程的技巧而已。
用摄影来举例:编程=摄影,目的是还原当时所见的场景,语言就是你使用的设备,无论是旁轴,单反还是傻瓜都不影响你去完成你的目标。至于更深入层次的了解只是让你在更复杂的情况下有更好的选择罢了,比如说熟练的使用指针在我看来就是用ISO100的胶卷迫冲出ISO400的效果,满足某些极端情况的特殊能力罢了。 本帖最后由 长门大明神 于 2018-4-8 09:25 编辑
|