作者熟悉二三十种编程语言,写了20多年代码.本书是作者对编程语言.开发流程.google的战略等的思考.比较有趣. 前面部分是作者对编程语言的一些思考.作者鄙视C++, Java,面向对象.比较有趣的是作者把编程语言和思想划分为自由和保守两大阵营.自由派希望快速发布,容忍bug和安全上的缺陷,保守派则重视安全和稳健 作者认为,设计优秀的弱类型系统比同样优秀的强类型系统更有竞争力. 作者推崇精简,认为代码最大的敌人是体格,也就是代码的行数. 作者认为Perl和Python两种语言的出现时间差不多,…
Web程序开发流程 在实际的开发中,一个Web程序的开发过程要设计多个角色,比如客户(提出需求).项目经理(决定需求的实现方式).开发者(实现需求)等,在这里我们假设自己是一个人全职开发.一般来说一个web程序的开发流程如下所示: 1)  分析需求,列出功能清单或写需求说明书 2)  设计程序功能,写功能规格书和技术规格书 3)  进入开发和测试的迭代 4)  调试和性能等专项测试 5)  部署上线 6)  运行维护与营销等 写好功能规格书后,我们就可以进行实际的代码编写.在具体的开发中,代码编…
这个题目的噱头太大,要真的写起来, 足够写一本书了. 本人是过来人, 结合自身的体会和大家交流一下,希望新人能少走弯路. 每个人的情况不一样,我下面的描述可能并不适合每一个看到这篇文章的人. 一.C/C++语言 如果你的基础很差, 建议不要一开始就学C++语言,从C开始学起,对程序有个初步的认识,循序渐进.C语言的书嘛,先买一本 300 页以内的,把书中的每一个例子都通过键盘敲打进去到 Visual studio里面去,然后单步执行,逐行调试去看各个变量的值.或者自行添加一些printf语句去输…
原地址:http://blog.csdn.net/langeldep/article/details/6333562 这个题目的噱头太大,要真的写起来, 足够写一本书了. 本人是过来人, 结合自身的体会和大家交流一下,希望新人能少走弯路. 每个人的情况不一样,我下面的描述可能并不适合每一个看到这篇文章的人. 一.C/C++语言 如果你的基础很差, 建议不要一开始就学C++语言,从C开始学起,对程序有个初步的认识,循序渐进.C语言的书嘛,先买一本 300 页以内的,把书中的每一个例子都通过键盘敲打…
抛出一个问题:C++ 真的很可怕吗? 2016 年底,C++ 之父 Bjarne Stroustrup 在一次采访中表示:”C++ 让编程专家很容易编写出复杂.高性能.低资源消耗的代码,但不足以成为广大普通程序员喜爱的语言,它需要简化.“他努力说服 ISO C++ 标准委员会的专家和编程教师,希望他们在 C++ 的开发和讲授中使用更简单的方式,而不仅仅专注于最优化和最聪明的技巧,他认为”简单的表述方式才是最优化的方案“. C++ 的复杂程度连创造者都觉得需要做些改变,它越来越复杂,似乎是业界公认…
谈到数据科学领域的开发工具,Jupyter 无疑是非常知名的一种.它具有灵活高效的特点,非常适合进行开发.调试.分享和教学.近日,Netflix(奈飞)居然也玩起了跨界,他们开源了一个名为 Polynote 的程序.类似于 Jupyter,Polynote 可以进行开发工作,但是能够支持包括 Python 在内的多种编程语言. 据奈飞在 Medium 的文章中介绍,Polynote 开发的目的是为了给数据科学家和机器学习研究者提供一个笔记本环境,使他们能够自由且无缝地和奈飞本身基于 JVM 的机…
我,一个老程序员,也是一个学生,把玩过甚多语言,大多不精.我既非名牌学校,也不是高学历,仅代表一部分比较蛋疼的人.接触PHP也是很早了,从04年的OFSTAR开始的,到现在六年了,期间也接触过不少的语言.从脚本JS到底层的C语言.坦诚的说,我不是个高手,但是我相信自己比大多数人接触的知识面要宽广,深刻些吧.同时我也是一名学生,从东南大学到西电,对计算机的爱好一波三折.我这里想说几个问题:1.语言,语法重要吗?不重要.重要的编程的基本思想.语言是不相通的,相通的是思想.PHP作为一门WEB语言,很…
小学生都能用的编程语言 2020的春季中小学受疫情影响,一直还没有开学,孩子宅在家说想做一个学校要求的研究项目,我就说你做一个怎么样通过编程来学习数学的小项目吧,用最简单的计算机语言来解决小学数学问题.虽然我是一个老码农,但一直不赞成教小学生学编程,觉得这是揠苗助长,小学生不应该过早的固化逻辑思维而放松形象思维,某些少儿编程机构居然教学C++游戏编程,我觉得这真是在摧残祖国的花朵.现在孩子宅在家 ,想让他学点什么好几次冒出学编程的想法都被自己给否决了,直到我看到数学老师要求同学们整理小学阶段的数…
转发链接地址:https://mp.weixin.qq.com/s/SSh9HcA5PgMHv7xiolQkig 貌似这一点适应的行业最广,但是我可以很肯定的说:当你从事web开发一年后,重新找工作时,才会真实的感受到这句话. 工作第一年,往往是什么都充满新鲜感,什么都学习,冲劲十足的一年:WEB行业知识更新特别快,今天一个框架的新版本,明天又是另一个新框架,有时往往根据项目的需要来不断学习新东西:所有,很多时候感觉,自己用过的东西真多呀!但是真正深入研究的东西却不多. 面试,是跳槽后第一个需要…
分享一个超级好用的php程序员工具箱,是由php中文网开发的. 集合了php环境搭建.在线小工具.原生手册.文字与视频教程.问答社区等 (php程序员工具箱 v0.1版本,点此下载:http://www.php.cn/xiazai/gongju/714) 一.php环境一键配置 你是否为php运行环境如何搭建感到烦恼?你是否遇到过php环境配置出现各种问题感到头痛不已!这些问题php程序员工具箱都为您解决!php程序员工具箱集合了Apache和Mysql,可以一键搭建和配置!并且有多个版本可以进…
好程序员分享居中一个float元素,我们布局的时候,用margin来设置float元素的外边距来达到效果.对于,在文档流中的元素,我们很容易让它水平居中,只要给元素设置一个固定的宽度,用margin:0 auto;就行了,这种技巧甚至在IE6中兼容得很好. 那么如何让浮动的元素水平居中呢?浮动元素脱离了文档流,上面的方法肯定是不行的.特地去网上查了一下,做为学习笔记记录下来我们布局的时候,用margin来设置float元素的外边距来达到效果.对于,在文档流中的元素,我们很容易让它水平居中,只要给…
什么是鞍点????? 鞍点就是在一个二维数组中,某一个数在该行中最大,然而其在该列中又是最小的数,这样的数称为鞍点. 昨天突然在书上看到这样的一道题,就自己尝试着写了一个找出一个二维数组中的鞍点. 好了,废话不多说,代码奉上............ /*这个程序检测的是一个二维数组中是否存在鞍点, 所谓的鞍点即是在这个二维数组中,某一个位置上的 元素在该行上最大,该列上最小*/ #include<stdio.h> #define M 3 #define N 3 //定义行和列的大小 int m…
PHP是一个使用者非常多的开发语言,但在每个领域里的开发侧重点有所不同互联网方面,在稳定的基础上,更注重性能.高并发,高负载的处理. PHP职业发展规划一般有三条路线,一条技能专精发展路线.另两条,是在技能发展遇到“瓶颈”时,分别向产品或运营转型的路线. 以下是PHP中文网风尘浪子的一篇文章,原文为:分享8年开发经验,浅谈个人发展经历,明确自己发展方向 正文: 在中国有很多人都认为IT行业是吃青春饭的,如果过了30岁就很难有机会再发展下去!其实现实并不是这样子的,在下从事.NET及JAVA方面的…
C语言的模块化程序结构用函数来实现,即将复杂的C程序分为若干模块,每个模块都编写成一个C函数,然后通过主函数调用函数及函数调用函数来实现一大型问题的C程序编写,因此常说:C程序=主函数+子函数.因此,对函数的定义.调用.值的返回等中要尤其注重理解和应用,并通过上机调试加以巩固.一.判断语句(选择结构)    if 语句:“如果”语句:if—else 语句:“若…(则)…否则…”语句:switch 语句:“切换”语句:switch—case:“切换—情况”语句. 二.循环语句(循环结构)    w…
一.CGI概述 CGI(公用网关接口)规定了Web服务器调用其他可执行程序(CGI程序)的接口协议标准.Web服务器通过调用CGI程序实现和Web浏览器的交互, 也就是CGI程序接受Web浏览器发送给Web服务器的信息,进行处理, 将响应结果再回送给Web服务器及Web浏览器.CGI程序一般完成Web网页中表单(Form)数据的处理.数据库查询和实现与传统应用系统的集成等工 作.CGI程序可以用任何程序设计语言编写,如Shell脚本语言.Perl.Fortran.Pascal.C语言等.但是用C…
千万不要当程序员面说有bug 对于新手程序员而言,在复杂代码中找BUG是一个难点.下面我们总结下老从程序员解Bug的通用套路,希望对大家有帮助. 1.IDE调试 根据项目特点和语言特点选择一个最合适的IDE,由于本人是做C++出身,最喜欢用的莫过于Visual Studio 了,这款微软开发的IDE,自从研发出来,就被称为宇宙第一编译器,能编译调试C/C++.C#.F#.Python.JavaScript.Qt.iOS等多种语言的开发.目前的VS2017还原生支持远程跨平台的软件开发,这无疑给我…
作为一个从业三年左右的,并且从事过半年左右PHP开发工作的前端,对于后台,尤其是对以js语言进行开发的nodejs,那是比较有兴趣的,虽然本身并没有接触过相关的工作,只是自己私下做的一下小实验,但是还是记录一下方便以后复习! 今天主要记录一下,很久以前用nodejs制作一个简单的服务监听程序的一些过程! 大家都知道,通过nodejs可以对前台请求进行监听,这里就放一个官网的hello world例子吧: var http = require('http'); http.createServer(…
1 开发一个注重性能的JDBC应用程序不是一件容易的事. 当你的代码运行很慢的时候JDBC驱动程序并不会抛出异常告诉你. 本系列的性能提示将为改善JDBC应用程序的性能介绍一些基本的指导原则,这其中的原则已经被许多现有的JDBC应用程序编译运行并验证过. 这些指导原则包括: 正确的使用数据库MetaData方法  只获取需要的数据  选用最佳性能的功能  管理连接和更新 以下这些一般性原则可以帮助你解决一些公共的JDBC系统的性能问题. 使用数据库Metadata方法 因为通过ResultSet…
6个变态的C语言Hello World程序   下面的六个程序片段主要完成这些事情: 输出Hello, World 混乱C语言的源代码 下面的所有程序都可以在GCC下编译通过,只有最后一个需要动用C++的编译器g++才能编程通过. hello1.c 1 2 3 4 5 6 7 8 9 10 11     #define _________ }     #define ________ putchar     #define _______ main     #define _(a) ______…
在日常生活中,我们常常遇到要知道某一天是星期几的问题.有时候,我们还想知道历史上某一天是星期几.比如: “你出生的那一天是星期几啊?” “明年五一是不是星期天?我去找你玩?” 通常,解决这个问题的最简单办法就是看日历,但是我们总不会随时随身带着日历,更不可能随时随身带着几千年的万年历.老师告诉我们,学习C语言,就是为了用它来帮助我们解决实际问题的,那么,既然我们通过<C程序设计伴侣>学了C语言,如何用C语言写个程序来推算出自己出生的那天是星期几呢? 答案当然是肯定的(要不然,我也不会在这里啰嗦…
原文网址:http://www.crifan.com/source_insight_support_highlight_for_python_ruby_arm_batch_ppc_sql_tcl_delphi/ 用Souce Insight建立了一个项目,添加了一堆python的*.py文件后,发现当前不支持Python的语法高亮: 所以想要使得SI支持Python文件的语法高亮. [解决过程] 1.之前就折腾过,给si添加对于汇编文件语法高亮的支持,知道了就是去找到对应的配置文件,添加进来,然…
"蜘蛛"(Spider)是Internet上一种很有用的程序,搜索引擎利用蜘蛛程序将Web页面收集到数据库,企业利用蜘蛛程序监视竞争对手的网站并跟踪变动,个人用户用蜘蛛程序下载Web页面以便脱机使用,开发者利用蜘蛛程序扫描自己的Web检查无效的链接……对于不同的用户,蜘蛛程序有不同的用途.那么,蜘蛛程序到底是怎样工作的呢? 蜘蛛是一种半自动的程序,就象现实当中的蜘蛛在它的Web(蜘蛛网)上旅行一样,蜘蛛程序也按照类似的方式在Web链接织成的网上旅行.蜘蛛程序之所以是半自动的,是因为它总…
oc是一个全动态语言,oc的一切都是基于runtime实现的! 从以下三方面来理解runtime吧! 1. 传统的面向过程的语言开发,例如c语言.实现c语言编译器很简单,只要按照语法规则实现一个LALR语法分析器就可以了,编译器优化是非常难的topic,不在这里讨论范围内,忽略. 这里我们实现了编译器其中最最基础和原始的目标之一就是把一份代码里的函数名称,转化成一个相对内存地址,把调用这个函数的语句转换成一个jmp跳转指令.在程序开始运行时候,调用语句可以正确跳转到对应的函数地址. 这样很好,也…
title : C语言函数与程序结构 tags : C语言作用域规则 , 外部变量 ,静态变量 ,寄存器变量,宏定义 grammar_cjkRuby: true --- 外部变量 变量声明用于说明变量的属性(类型),而变量定义还会引起存储器分配 int sp; double s[MAX]; 声明地方:函数外 如果上面的变量定义在所有函数之外,即为外部变量,并为这两个外部变量sp.s[MAX],分配储存单元以及数组的长度,在其源文件中的所有函数都可以使用这两个外部变量. extern int sp…
解决C#程序只允许运行一个实例的几种方法详解 本篇文章是对C#中程序只允许运行一个实例的几种方法进行了详细的分析介绍,需要的朋友参考下 本文和大家讲一下如何使用C#来创建系统中只能有该程序的一个实例运行.要实现程序的互斥,通常有下面几种方式,下面用 C# 语言来实现:方法一:使用线程互斥变量. 通过定义互斥变量来判断是否已运行实例.把program.cs文件里的Main()函数改为如下代码: 复制代码 代码如下: using System;using System.Windows.Forms;u…
ExpandoObject与DynamicObject的使用   using ImpromptuInterface; using System; using System.Dynamic; namespace ConsoleApp2 { class Program { static void Main(string[] args) { dynamic expando = new ExpandoObject(); expando.name = "cys"; expando.Add = n…
记录一个酷绚的linux  桌面程序  GLX-DOCK (cario-dock),支持多种风格的桌面主题. http://glx-dock.org/ 优势: 多个workspaces 方便自由切换 当前workspace 只显示当前的apps 运行项目与启动项目 分离显示 相关设置: 1.taskbar  : seprated 2. appearance->views->main dock view: panel 3. appearance->views->sub dock vi…
原文:http://android.eoe.cn/topic/android_sdk 描述: 指定每个与该应用程序兼容的屏幕配置.一个配置清单中只能有一个标签的实例,但是它能够包含多个元素.每个元素指定一个特殊的与该应用程序相兼容的屏幕大小-密度组合.Android系统不会读取AndroidManifest.xml里面的标签(不论是安装还是运行的时候).这个标签只是一些外部服务(比如Google Play)用来更加了解应用程序的屏幕兼容性并为用户过滤时读取的一些信息而已.任何不在此定义为一个标签…
转自:https://toutiao.io/posts/0l7l7n/preview Leaf 游戏服务器框架简介 Leaf 是一个由 Go 语言(golang)编写的开发效率和执行效率并重的开源游戏服务器框架.Leaf 适用于各类游戏服务器的开发,包括 H5(HTML5)游戏服务器. Leaf 的关注点: 良好的使用体验.Leaf 总是尽可能的提供简洁和易用的接口,尽可能的提升开发的效率 稳定性.Leaf 总是尽可能的恢复运行过程中的错误,避免崩溃 多核支持.Leaf 通过模块机制和 leaf…
执行 Go 程序的三种方式及 Go 语言关键字 执行 Go 程序的三种方式 一.使用 go run 命令 二.使用 go build 命令 Step1. 对 go 源码源文件执行 go build 命令,会生成一个同名 .exe的可执行文件 Step2. 执行.exe可执行文件 三.在线编译运行 使用官方网站的在线工具进行编译运行:https://play.golang.org Go 语言中的关键字 Go 语言关键字 break default func interface select cas…