程序员

程序员高薪之路的五大误区

旧时模样 提交于 2019-12-09 10:04:59
转载:中国IT实验室 我始终认为,对一个初学者来说,IT界的技术风潮是不可追赶。我时常看见自己的DDMM们把课本扔了,去卖些价格不菲的诸如C#, VB.Net 这样的大部头,这让我感到非常痛心。而许多搞不清指针是咋回事的BBS站友眉飞色舞的讨论C#里面可以不用指针等等则让我觉得好笑。C#就象当年的ASP一样,"忽如一夜春风来,千树万树梨花开",结果许多学校的信息学院成了“Web 学院”。不少大学生都去做Web 了。当然我没有任何歧视某一行业的意识。我只是觉得如果他们把追赶这些时髦技术的时间多花一点在基础的课程上应该是可以走得更远的。   高薪之路五大误区初学者对C#风潮的追赶其实也只是学习过程中经常遇到的几个误区之一。我将用一些实际的例子来说明这些现象,你可以按部就班的看看自己是不是属于其中的一种或者几种:   一、认为计算机技术等于编程技术有些人即使没有这个想法,在潜意识中也有这样的冲动。让我奇怪的是,许多信息学院的学生也有这样的念头。认为计算机专业就是编程专业,与编程无关的,或者不太相关的课程他统统都不管,极端的学生只要书上没带"编程"两个字他就不看。   其实编程只是计算机技术应用过程中一种复杂性最低的劳动,这就是为什么IT业最底层的人是程序员(CODER)。计算机技术包括了多媒体,计算机网络,人工智能,模式识别,管理信息系统等等这些方面

认认真真推荐几个优质公众号

牧云@^-^@ 提交于 2019-12-08 23:11:06
这几天大家放假了,不少人外出旅游,但这几个技术号还在坚持更新推文,因为不少同学担忧的情况——“ 晋升无望、收入见顶、生活开支飙升、财务危机如影随形 ”,我挑选了几 个优质原创技术号,推荐给大家化解成长的烦恼。他们都是我平时关注的优秀号主,分享给大家,助大家学习路上披荆斩棘~能力得到提升,思维得到开阔~ 架构师社区 ▼ 专注分享架构师技术干货,架构师行业秘闻,汇集各类奇妙好玩的架构师话题和流行的架构师动向! 长按二维码识别关注 开发者技术前线 ▼ 这是我的一个老熟人的公众号,他是一名前百度技术人,现知名独角兽公司技术专家,这是他主办的顶级技术社区,内容汇集技术前线快讯和关注行业趋势,技术文大部分来自大知名公司最佳实践,专注开发者经历和成长,我也经常阅读,值得关注! 长按二维码识别关注 码农突围 ▼ 号主是化学专业半路转行的程序员,目前就职于BAT从事基础架构相关开发,人生信条「韬光养晦、伺机而动、弯道超车」,公号主要分享「Python、Java、大前端、大数据、Machine Learning、AI 」相关技术,关注码农技术提升•职场突围•思维跃迁,以及过来人做事方法和技巧,用大厂思维和格局助力20w+程序员突围单一技术孤岛,是程序员成长的最佳充电站。 这也是我经常读的号,强烈推荐关注! 长按二维码识别关注 Python那些事 ▼ 人生苦短,我用 Python。Python

计算机软件相关知识

折月煮酒 提交于 2019-12-08 23:10:30
1.软件定义   计算机软件是指为管理、运行、维护和应用计算机系统而开发的程序、数据和相关文档的集合。   其中,程序是让计算机硬件完成特定功能的指令序列,数据是程序处理的对象。   如果计算机中仅有硬件系统,则只具备了计算的基础,并不能真正计算,只有将解决问题的步骤编制成机器可识别的程序加载到计算机内存开始运行,才能完成计算。 2.软件分类   通常可将软件分为系统软件、中间件、应用软件。 3.系统软件   系统软件是指那些为计算机所配置的、用于完成计算机资源的配置和管理,以及为用户提供操作界面和为专业人员提供开发工具与环境的软件。如操作系统、程序设计语言及处理程序、数据库管理系统、实用程序与软件工具。   系统软件的功能是管理计算机系统的硬件和软件资源。 4.应用软件   应用软件用于解决各种不同具体应用领域的具体问题的专门软件。   如文字处理软件、电子表格软件、图形图像软件、网络通信软件、统计软件等。 5.中间件   中间件是一类独立的系统软件或服务程序,常用来管理计算资源和网络通信,提供通信处理、数据存取、事务处理、Web服务、安全、跨平台等任务。 关于操作系统 查阅了一些关于操作系统的知识 操作系统(Operation System, 简称OS)是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件

Python程序员面试算法宝典---解题总结: 第9章 大数据 9.1 如何从大量的url中找出相同的url

淺唱寂寞╮ 提交于 2019-12-08 17:47:27
# -*- coding: utf-8 -*- ''' Python程序员面试算法宝典---解题总结: 第9章 大数据 9.1 如何从大量的url中找出相同的url 题目: 给定a,b两个文件,各存放50亿个url,每个url各占64B,内存限制是4GB,请找出a、b两个文件 共同的url。 分析: 海量数据处理方法有: hash(字典),位图,布隆过滤器,倒排索引,数据库优化,外部排序,Trie数,堆, 双层桶,MapReduce。 重点: 哈希,位图,Trie树,堆。 50亿个url占据=50亿*64B = 50 0000 0000 * 64 B = 3200 0000 0000 = 3200 00000 KB = 320000 MB = 320GB 实际只有4GB,显然不能将所有数据全部放入内存。 4GB可以存放=4GB/64B = 4 * 2^30 / 2^6 = 2^5 M = 32* 2^20个url。 考虑用分治法,计算每个url的哈希值,将哈希值相同的url存入同一个文件中。 为了能让内存中可以放得下,可以考虑平均每个文件大约600MB, 这样a,b中相同哈希值划分得到的文件总共内存大约1.2GB,然后寻找这两者共同url 最多1.2GB,这样可以控制整个内存占用最多不超过2.4GB。 关键: 1 书上解法 步骤1: 计算每个url的哈希值hash,然后用 hash

团队最后一次作业:总结

試著忘記壹切 提交于 2019-12-08 02:42:26
1.软件工程课程的想象和提出的问题。 上课和下来的完成作业,其实有很大的不同。对于一个程序员,确实也可以看见其中的必要性,比如学习能力,上这堂课,可以说颠覆了我对程序员的学习和工作的概率,可能每个人心中都有一些幻想。但更多的,这个课程教会我们整个产业链的工作关系,虽然未来会有些改变,但大体上能知道这个产业链的些许。 2.经验 经过一学期的学习,在某些地方的确有些提升,特别是对程序员的工作的一些都有了了解。特别是一些平台的使用,如github,还有一些软件,墨刀,更多的 是程序员的一种工作模式,如结队编程,可以说是受益匪浅,但是其中有很多都是自己摸索出来的,并不是在学习后去使用,其中固然有很多曲折,但是幸运的是我们能在其中克服困难。 3.新问题 程序员的发展有多样性,我很疑惑在这种固定模式下,产生的程序员,到底是为了写代码而产生,还是为了激发一种新形态的程序员,或者说,是否能产生一种新形态的程序员,有待考究与验证。 4.总结 都说从入门到登堂入室有很大一段路要走,我觉得是的,程序我现在只是窥其冰山一角,很难看清未来的方向,学习这门课程,倒是给了我们一个方向,虽然只是初具其型,但是也是一个种子,在未来会生根发芽,对我们有很大益处。这一学期,学到很多,用了很多,同时我们伙伴之间的感情也增加了许多,我想这是我们的第一步,未来,将会有很多步,来帮助我们成长。 来源: https://www

为啥程序员下班后只关显示器从不关电脑?

旧街凉风 提交于 2019-12-08 02:21:14
点击 上方“ 程序猿技术大咖 ”,选择“ 关注公众号 ”, 一起共进步! 首百问答的答案:jingmentudou 因为你永远不知道什么时间会被叫醒。开个远程就能避免半夜去公司了。 月尧jade 干这一行的,电脑自按下开机键开始,除了驱动会自动启动外,你需要重新检查各大运行库,需要重建虚拟机,需要重新激活某些来路不明的软件,需要开十几个甚至很多的专业软件,需要开全部的聊天通讯软件,需要重新测试某些pcie通道扩展卡运行问题(显卡点不亮啊,声卡炸了啊),做主控机的电脑还要重新连接所有设备……emmm 麻麻银09 我是凭实力开的机,为什么要关? 沉夜孤星tebxke7f67 我刚去我们公司的时候,每天都老老实实关电脑下班,上班再开电脑。直到有一天,我发现他们几个人的电脑竟然从来不关,周六周天都不关,更夸张的是我老大有一次出差一个星期电脑也没关。这仿佛打开了我新世纪的大门。从那以后我也开始下班只关显示屏,上班开显示屏,这样一来每天上班的时候都不用再进行以下操作了。 1、启动微信,确认登陆,手机确认,哪天没带手机的时候更有用。 2.、输入密码登入堡垒机、输入密码登录服务器,有时候要输入好几次密码。 3、辛辛苦苦找昨晚还没干完的活的断点、然后再重新开始,重新理一下思路。4、打开Sublime打开到上一次写代码的目录。 5、打开另一个服务器准备给人提供数据。尤其当我发现

专业程序员与业余程序员

99封情书 提交于 2019-12-07 18:54:33
什么时候才能成为一个专业 程序员 呢?三年还是五年工作经验?其实不用的,你马上就可以了,我没有骗你,因为专业 程序员 与业余 程序员 的区别主要在于一种态度,如果缺乏这种态度,拥有十年工作经验也还是业余的。 什么态度?专业态度!也就是星爷常说的专业精神。专业态度有多种表现形式,以后我们会一一介绍的。这里先介绍一下有关形象的态度,专业的 程序员 是很注重自己的形象的,当然 程序员 的形象不是表现在衣着和言谈上,而是表现在代码风格上,代码就是 程序员 的社交工具,代码风格可是攸关形象的大事。 有人说过,傻瓜都可以写出机器能读懂的代码,但只有专业 程序员 才能写出人能读懂的代码。作为专业 程序员 ,每当写下一行代码时,要记得程序首先是给人读的,其次才是给机器读的。你要从一个业余 程序员 转向专业 程序员 ,就要先从代码风格开始,并从此养成一种严谨的工作态度,生活上的不拘小节可不能带到编程中来。 代码风格有很多种,Windows 和Linux都有自己主流的代码风格,每个团队、每个公司也可能有自己的代码风格,争论哪种风格好哪种风格坏根本没有什么意义。有助于其他 程序员 理解的代码风格都是可以接受的,因为遵循特定代码风格的目的就是为了便于交流。 1 命名要展示对象的功能 1.1 文件名 文件名一定要能传达文件的内容信息,别人一看到文件名就能知道文件中放的是什么内容

计算机系统基础(一):程序的表示、转换和链接---第一周

做~自己de王妃 提交于 2019-12-07 18:20:36
1.以下有关冯.诺依曼结构思想的叙述中,错误的是( )。 A.程序由指令构成,计算机能自动执行程序中一条一条指令 B.计算机内部以二进制形式表示指令和数据 C.计算机由运算器、存储器、控制器和I/O设备组成 D.指令和数据都放在存储器中,两者在形式上有差别 2.以下有关指令以及指令执行过程的叙述中,错误的是( )。 A.指令中指定的操作数只能是存放在存储器中的数据 B.将要执行的下条指令的地址总是在程序计数器PC中 C.指令由操作码和操作数或操作数的地址码构成 D.CPU中的控制器对指令操作码进行译码 3.以下有关编程语言的叙述中,错误的是( )。 A.用高级编程语言编写程序比用汇编语言更方便 B.计算机不能直接执行高级语言程序和汇编语言程序 C.汇编语言和机器语言都与计算机系统结构相关 D.不能直接用机器语言(机器指令)编写程序 4.以下有关机器指令和汇编指令的叙述中,错误的是( )。 A.机器指令和汇编指令一一对应,功能相同 B.机器指令和汇编指令都能被计算机直接执行 C.汇编指令中用符号表示操作码和地址码 D.汇编指令中用十进制或十六进制表示立即数 5.以下有关使用高级编程语言编写和开发软件的叙述中,错误的是( )。 A.须程序员在应用程序中直接控制外设进行输入/输出 B.须有一个翻译或转换程序,即编译器或解释器 C.须有程序员与计算机交互的用户接口,即GUI或CUI D

慕课网-7七月-程序员的自我修养与高效学习方法-48元-完整版

一个人想着一个人 提交于 2019-12-07 17:33:27
慕课网-7七月-程序员的自我修养与高效学习方法-48元-完整版 下载地址: 百度网盘: https://pan.baidu.com/s/1rE2mMNQngVMbZorWPKG6DQ 微云: https://share.weiyun.com/5bxQI2N 失效联系微信:itit11223344 来源: https://www.cnblogs.com/itit11223344/p/12002636.html

打造一个全命令行的Android构建系统

谁说胖子不能爱 提交于 2019-12-07 13:42:00
IDE都是给小白 程序员 的,大牛级别的程序员一定是命令行控,终端控,你看大牛都是使用vim,emacs 就一切搞定” 这话说的虽然有些绝对,但是也不无道理,做开发这行要想效率高,自动化还真是缺少不了命令行工具,因为只有命令行才是最佳的人机交互工具。其实IDE也是底层也是调用命令行工具而已,只不过给普通开发者呈现一个更友好的开发界面。这里可不是宣扬让大家放弃IDE都改命令行,只是每种事物都有他存在的理由,无论是编程语言还是工具都是一个原则 “没有最好的,只有最合适的”。 前一段时间做一个人产品,发布产品的时候为了统计各渠道流量免不了要构建不通的渠道包,你懂得国内渠道上百个,靠IDE编译打包非吐血不可。这些重复劳动最适合交个程序来做,很多程序员想不明白这个问题,宁愿把大量的精力时间花在业务上,却不知道用工具 提高工作效率 。在这里写一篇简单的教程,告诉大家怎么脱离IDE环境完成一个android项目的编译构建,有了这基础开发什么自动化构建工具都不是什么难事了, 前一阵子做的一个打包html5应用的在线工具 AppBuilder 就是基于命令行构建完成的。 说到命令行自然是不需要图形界面,所以Android SDK的安装下载自然都是在终端上进行。下面是本文中使用的一些SDK和基本环境。 ubuntu server 14.04 (64位) JDK 1.7 android-sdk_r24