程序员

蔡奇宏软件工程第一次作业

最后都变了- 提交于 2020-03-12 06:45:42
1.软件专业术语 [1] 软件=程序+软件工程 程序 =数据结构+算法 软件企业=软件+商业模式 [2] 软件构架( Software Architecture ) 软件设计与实现( Software Drsign,Implementation and Debug ) 源代码管理( Source Code Control ) 配置管理( Software Configuration Management ) 质量保证( Quality Assurance ) 软件测试( Test ) 需求分析( Requirement Analysis ) 程序理解( Program Comprehension ) 软件维护( Software Maintenance ) 服务运营( Service Operation ) 软件的生命周期( Software Maintenanec ) 服务运营( Service Operation ) 软件的生命周期( Software Life Cycle,SLC ) 软件项目负责的管理( Project Management ) 用户体验( User Experience ) 国际化和本地化( Globalization & Localization ) [3] 复杂性( Complexity ) 不可见性( Invisibility ) 易变性(

谈谈最近独立做项目的一些事情,一些小经验,分享之!

风格不统一 提交于 2020-03-12 04:38:43
  可以说我是一个码农,一个纯正的码农,一个脱离了低级趣味的码农,时刻准备着要做一个对社会有贡献的码农。 平常最喜欢的事情就是在群里问问题,总是有那么一群好哥们在一起,这样可以享受装逼的乐趣。   谈了这么多无厘头的话题,总归要切入正题,我大学的时候学的是JAVA,但是无奈大学时光都沉浸于美色和游戏当中,所以导致大学毕业的时候,只会写一点简单的东西,只知道JAVA中的swing(这个貌似是我懂的最深的知识了)。   也就是在我找工作四处碰壁,走投无路的时候,我发现了一条阳关道:啃老。虽然这不怎么好,但是确实,你说没技术能干啥,毕业=失业=上家里蹲大学,当我的父母叫我转行的时候我毅然拒绝了,这个时候我才发现,我离不开电脑,离不开编程。   于是乎,从那个时候开始,我才打开了编程这扇大门,而这扇大门的第一站,就是ASP.NET,还记得当时教我们的老师(其实后来参加了一个所谓的培训),是半路出家的老师,更坑爹的是,他基本是不会.NET,他是搞JAVA的。   然后呢,迷迷糊糊的,就上了.NET这条船。由于我到的那家公司,基本是都是东西做好的,我只需要维护就行了,而且现在想起来,还有点。。。底层框架无法看到,而且居然连LINQ都很少用,基本都是用SQL,还记得以前很搞笑的,把数据取出来放到一个LIST中,然后再循环。。。其实有时候一个LINQ语句能搞定的问题,用了很长的时间,想想都好笑

程序员小笑话

限于喜欢 提交于 2020-03-12 04:22:16
十行代码九个警告八个错误竟然敢说七日精通六天学会五湖四海也不见如此三心二意之项目经理简直一等下流。 程序员那些事儿 : 一想到万一努力Coding、熬夜Debuging,出人头地了就会有人检查我的学位论文,我就翻身又睡了。 有时代码写的闷了,会临时去WC,随便赶上哪个蹲坑就上哪个蹲坑,独自蹲着,不发一语,然后再回座位,当没事发生过,突然觉得这TM才叫IT民工 ! 【路人甲问】:如果失去杨元庆,雅虎将会怎样?【我答】:难道他,姓杨,名致远,字元庆?【路人乙答】:雅虎将不再是我们熟悉的那个谷歌了。 【技术宅男如何把妹?】1自制系统盘内置马儿随时知道MM在做什么,计划任务定期搞崩系统从而保持用户粘性;2给MM推荐自制APP,随时知道mm位置给她惊喜;3经过一段时间你就积累了大量数据,做一下数据挖掘就知道她的一切喜好习惯;4将该应用免费开放给更多宅男,于是有了海量数据.–这就是云把妹 每一次debug就是把程序的内伤化作自己的内伤 I’ll be there in 5 minutes. If not, read this again. 我5分钟后到,如果没到,请再读一遍此短信…… 【婴儿般睡眠】昨天问一资深IT同事:“最近听说服务器总坏,遭到同事集体投诉你、老板连番数落你,睡眠怎样?”他说:“像婴儿般睡眠。”我说:“不愧是高手!这都能睡得着!”他沉默半响道:“半夜经常醒来哭一会儿再睡。”

C#中对象的销毁和内存回收

痞子三分冷 提交于 2020-03-11 18:56:56
在C++中,在堆上分配的内存必须手动回收。即new和delete操作符是要成对使用的。这种方式给程序员提供了强大而灵活的控制能力,程序员可以控制何时销毁对象,回收内存 。这种控制能力,令C++程序员感到自己对程序具有很强的驾驭能力,因此对此功能津津乐道。但是,这种手动回收机制,非常的难以控制,即使经验丰富的C++程序员,也难免疏漏,导致程序中发生内存泄露,轻则导致系统运行越来越慢,重则最终崩溃。这也是手动回收机制所最为人所诟病的地方。 因此,在很多所谓的现代程序语言中,如Java,C#,都提供了自动垃圾回收机制。在对象不再被引用后,系统自动负责销毁对象,回收内存。在托管C++中,通过语言扩展,也可以实现垃圾的自动回收。 自动垃圾回收无需程序员的干预,自动回收废弃对象,释放内存。它有效的避免了内存泄露问题,但是,相应的也带来了新的问题: 1、废弃对象的回收时间是不确定的,即你无法确定系统在何时会执行垃圾回收。每个垃圾收集器都会按照一定的算法执行垃圾收集,但它何时执行,每次执行回收哪些对象是不确定的。 2、它使程序员丧失了部分的控制能力,相应的在系统运行过程中,在性能上也会有一定的损失。 C#中对象的销毁和回收,在实现方式上比较灵活。它既允许立刻销毁对象,回收内存,也允许通过垃圾回收器自动回收。能够做到这点,是因为C#提供了两种对象的销毁方式: 1、类支持IDisposable接口

我不要做“枸杞红枣保温杯”的程序员了!这就是我的一键续命秘笈

◇◆丶佛笑我妖孽 提交于 2020-03-11 16:49:29
“程序员小哥哥,可以麻烦您个事吗(满怀期待的眼神)?” 3分钟没有回复的话,那么程序员小哥哥一定是在编程; 1小时之后,还没有回复,那么程序员哥哥一定还在编程; 1天之后消息依然没有提醒,那么程序员哥哥一定还在写代码…… 假设生活欺骗了你,就去问问程序员为什么编程~ 假设工作让你心情宕机,就去问问程序员BUG改完了吗? 程序员大概是被我们调侃最多的职业了,但其实程序员对工作的要求正如他们对生活品质的要求:枸杞红枣保温杯,捏脚捶背样样全,一周一次大保健,20岁还是壮小伙,25岁已成油腻男。抵不住写代码的辛苦。收入是越高,可是头发越少,想来他们一定是因为压力山大,才发际线渐渐消失的吧~ 来讲述一个在深圳的程序老鸟的故事。 大城市普遍的现象就是较高的物价,高消费、高房租,谈了个女朋友连商场都不敢去逛(穷),几个月不出门宅在家里找工作。现在工作难找啊,大公司看资历竞争也大,一不小心就给淘汰了,小公司工作压力大啊,对程序猿更是早秃的直升机。 好不容易进了一家各方面都满意的公司,想着我应该是稳定下来了,现在就是努力工作提高业绩,一步步的往上爬。一段时间后,对公司的任务也算是得心应手,公司也器重我不断的加大工作难度,可工资是迟迟不上涨,我决定跟老板理论,可他给我来了个“帽子戏法”,之后我便跳槽到另一家公司。 第一次跳槽就让我尝到了甜头——我的工资翻倍了,之后又因为种种原因我陷入不断跳槽的深渊中

好程序员大数据培训分享实用的大数据之数组

随声附和 提交于 2020-03-11 16:49:12
好程序员大数据培训分享实用的大数据之数组 1.5.1 数组的定义与元素访问 数组是一个容器, 是一个用来存储指定数据类型的容器 注意事项: 数组是一个定长的容器, 一旦实例化完成, 长度不能修改 名词解释: 数组长度: 指的就是这个容器的容量, 表示这个数组中能存储多少个数据 元素: 指的就是数组中存储的数据 下标: 某一个元素在数组中的一个位置索引 遍历数组: 依次获取到数组中的每一个元素 数组的元素访问 通过下标来访问的, 数组中元素的下标是从0开始的 数组中元素的下标: [0, 数组.length - 1] 注意: 在访问数组中元素的时候, 注意下标的范围, 不要越界!!! 遍历数组: 使用循环遍历下标的方式 int[] array = {1, 2, 3}; for (int index = 0; index < array.length; index++) { System.out.println(array[index]); } 使用增强for循环 int[] array = {1, 2, 3}; for (int ele : array) { System.out.println(ele); } 1.5.2 数组的内存分析 1.5.3 数组的常见操作 1.5.4 数组排序 选择排序 固定一个下标, 然后用这个下标对应的元素依次和后面每一个下标的元素进行比较 int[]

好程序员:大数据之线程高级部分

妖精的绣舞 提交于 2020-03-11 16:36:10
好程序员:大数据之线程高级部分,首先讲一下线程的生命周期 对于一个线程, 在被创建后, 不是立即就进入到了运行状态, 也不是一直处于运行状态, 在线程的声明周期中, 一个线程会在多种状态之间进行切换 new : 新生状态, 线程被实例化, 但是还没有开始执行(start) runnable: 就绪状态, 已经执行过start, 线程已经启动了, 只是没有抢到CPU时间片 running: 运行状态, 抢到了CPU时间片 blocked: 阻塞状态, 线程执行的过程中, 遇到一些特殊情况, 会进入阻塞状态. 阻塞中的线程, 是不能参数时间片的抢夺的 (不能被线程调度器调度) dead: 死亡状态, 线程终止 ​ 正常死亡 : run方法中的代码执行结束 ​ 非正常死亡 : 强制使用stop方法停止这个线程 临界资源问题 由于线程之间是资源共享的。如果有多个线程,同时对一个数据进行操作,此时这个数据会出现问题。 如果有一个线程在访问一个临界资源,在访问之前,先对这个资源“上锁”,此时如果有其他的线程也需要访问这个临界资源,需要先查这个资源有没有被上锁,如果没有被上锁,此时这个线程可以访问这个资源;如果上锁了,则此时这个线程进入阻塞状态,等待解锁。 ####同步代码段 // 同步代码段 // 小括号:就是锁 // 大括号:同步代码段,一般情况下,写需要对临界资源进行的操作

可视化编程已经能取代高级语言了吗?

戏子无情 提交于 2020-03-11 12:28:03
之前在知乎看到了一则较早的问题现在的可视化编程发展到什么程度了,什么时候可以取代高级语言?这在可视化编程行业内可是最高理想。但其中有一个回答真实反应现实——可视化编程无法取代高级语言。接下来分析几款国内外可视化编程商业工具(可以做出商业产品),从而分析一下可视化编程的桎梏,以及可能的发展前景。 国内外几种商业可视化编程工具: 1.Mendix 全行业做低代码开发几乎都用积木的方式去做,确实积木的拼接组合操作很容易,也符合程序员的操作习惯,但全行业似乎陷入了创意沼泽。这时候mendix出现在我眼前,流程图式编程是哪个神经病想的,真有意思(下文的Outsystems也是相同的形式)。这里引用一下别人对mendix的基本介绍: “专攻企业应用开发,面向B端用户,一般是面向有开发团队的中大型企业,提供模型驱动IDE和微流,减少代码量,使业务人员可以通过可视化组件参与到开发过程中,与程序员在Mendix platform上合作开发本企业的应用。提供一些企业解决方案、模板,开发平台上也支持自定义UI和组件。拥有Atlas UI Framework开发框架,根据应用和业务类型,会推荐相关的模板和组件,达到快速开发的目的。内置DevOps功能,可以持续交付,也可以使用Mendix platform API集成其他DevOps工具。” 可以做原生app,web系统。但编辑器功能本身并不完善

数据库访问性能优化

自作多情 提交于 2020-03-11 11:31:52
数据库访问性能优化 特别说明: 1、 本文只是面对数据库应用开发的程序员,不适合专业DBA,DBA在数据库性能优化方面需要了解更多的知识; 2、 本文许多示例及概念是基于Oracle数据库描述,对于其它关系型数据库也可以参考,但许多观点不适合于KV数据库或内存数据库或者是基于SSD技术的数据库; 3、 本文未深入数据库优化中最核心的执行计划分析技术。 读者对像: 开发人员: 如果你是做数据库开发,那本文的内容非常适合,因为本文是从程序员的角度来谈数据库性能优化。 架构师: 如果你已经是数据库应用的架构师,那本文的知识你应该清楚90%,否则你可能是一个喜欢折腾的架构师。 DBA (数据库管理员): 大型数据库优化的知识非常复杂,本文只是从程序员的角度来谈性能优化,DBA除了需要了解这些知识外,还需要深入数据库的内部体系架构来解决问题。 引言 在网上有很多文章介绍数据库优化知识,但是大部份文章只是对某个一个方面进行说明,而对于我们程序员来说这种介绍并不能很好的掌握优化知识,因为很多介绍只是对一些特定的场景优化的,所以反而有时会产生误导或让程序员感觉不明白其中的奥妙而对数据库优化感觉很神秘。 很多程序员总是问如何学习数据库优化,有没有好的教材之类的问题。在书店也看到了许多数据库优化的专业书籍,但是感觉更多是面向DBA或者是PL/SQL开发方面的知识,个人感觉不太适合普通程序员

关于程序员之间丧心病狂的鄙视链——编程语言篇

拟墨画扇 提交于 2020-03-11 05:32:51
你一定听说,程序员之间存在着极其丧心病狂的鄙视链。没错!今天就揭示编程语言工程师之间的鄙视链。 写汇编语言的工程师都鄙视写C语言的工程师 写C语言的工程师都鄙视C++工程师 C++工程师鄙视Java工程师和C#工程师 Java工程师和C#工程师则相互鄙视 然而,所有的工程师都鄙视PHP工程师。 想到我所在公司的工程师都是写PHP的,不禁默默心疼他们,哈哈哈哈。 (以上形象均出自作者手绘,转载请联系作者) 来源: https://www.cnblogs.com/xiaobai007/p/7839837.html