非专业程序员谈程序员修炼之路
我是学文科出身的,从98年学计算机开始怀着对软件编程的一腔热情,到今天已走过了6年的漫长而又艰难的学习之路,以后的路还很长,但回首过去学习时的艰难和曲折,使我觉得有义务要和刚刚学习的以及想要学习编程技术的后学谈谈我的对学习的看法,不足之处也请其他老鸟们指正与补充。
一、门槛降低了,我们应该怎么学
随着软件技术的发展,软件编程语言走过了一个由原始社会向工业社会发展的过程,从机器码编程到汇编语言,从汇编语言到各种高级语言;编程思想由面向过程发展到面向对象;同时编程工具也变成了可视化的。编程门槛随着技术和工具的发展变得越来越低,现在用delphi,vb等工具很快就可以做一个数据库系统、媒体播放器等在过去足以傲人的软件。但我要说,不要为你能在几分钟之内做一个软件而沾沾自喜,更不要因为工具的先进就丢掉了程序员的基本功。不管你是在校的大学生,还是自学的爱好者,如果想在程序员这条路上走的更远,一定要学好计算机的专业课。
二、语言的选择不重要,编程思想才是根本
经常在论坛里看到初学者问,“学什么语言好?什么语言最吃香,最有前途?”,早几年,还有许多比较各种语言和编译器的文章。这种思想也深深的影响了我,使我走了许多弯路。所以我要说,选择什么语言不是最重要的,编程思想才是程序员要学的根本。各种语言发展到今天都有它存在的原因。比如现在各种高级语言都有各自的优点,delphi最让人称道的是他在编写数据库系统方面的便捷,c/c++则在于它的灵活和高效性,vb的优点在于他最方便入门,Java的跨平台性是最好的。对于初学者学什么都好,因为这一阶段学习的重点在于语言和编译器本身,毕竟书上的例子和一个实用的工程相差是在太远。
当你走过了这个阶段,语言已经不是困扰你的重要问题时,那么你选在一个平台吧。(当然我的建议是Windows,一方面是学习的资料比较多,另一方面就是使用的人也多,好的软件是不愁每人使用的。)了解在这个平台编程的方法,就Windows来说就是学习API函数,并逐渐深入到它的内核。
如果你走过了这一阶段,那我告诉你你已经是最初你佩服的那种高手了。在这个平台上能够游刃有余,无论是开发各种应用软件,还是开发深入系统的系统软件,你都会得心应手。
三、编程不是单纯的对技术的追求,软件的灵魂是服务
作为技术人员,往往比较单纯和执著,一心想着怎么学好技术,不要落后于他人。殊不知,自己完全背离了软件的宗旨,软件(包括一切技术)的产生都是为了更好的为人服务。用户是不会在意你是否使用了更先进的技术,他只关心你是否为他提供了完整的解决方案和便捷的服务。所以在写程序前,一定要调查一下,你所写的软件会有多少用户,他们想让你提供那些服务。
以上是整体的思路,在此我以Windows平台上的学习为例,说一说学习之路。
首先以你的个人爱好或工作方向,选择一门语言。一般来说,只需要这几方面的书就够了。一种是语言入门和开发工具使用的书,之后是语言的参考大全,最后一种就是编程指南或开发指南。如学习vb,按顺序应该看《vb开发指南》《vb中文版参考祥解》(清华大学出版社);学习c/c++,则看《C语言程序设计(第二版)》(谭诰强)或《C++程序设计》(钱能),《Visual C++技术内幕(第4版)》(潘爱民),
然后看些计算机专业课程和深入Windows编程的书。如:《编码的奥秘》(Charles Petzold),《数据结构》(严蔚敏吴伟民),《编译原理和技术》,《Windows程序设计》(Charles Petzold),《深入浅出MFC(第2版)》(侯捷),《Win32多线程程序设计》(侯捷),《Windows核心编程》(jeffrey Richter)。
最后就是些深入系统内核源码和设计模式方面的书。如:《莱昂氏UNIX源代码分析》(John Lions著,尤晋元译),《STL源码剖析》(侯捷),《计算机程序设计艺术》(苏运霖译),《设计模式》( Erich Gamma等著,李英军等译)。
以上书籍为方便学习,都是按顺序排列的。
罗罗嗦嗦了许多,不知道对你有多少帮助,但我知道希望有更多的向我一样在这条路上摸索的同志能少走些弯路。
免费领取LAMP兄弟连原创PHP教程光盘/《细说PHP》精要版,详情咨询官网客服:http://www.lampbrother.net
PHPCMS二次开发http://yun.itxdl.cn/online/phpcms/index.php?u=5
微信开发http://yun.itxdl.cn/online/weixin/index.php?u=5
移动互联网服务器端开发http://yun.itxdl.cn/online/server/index.php?u=5
Javascript课程http://yun.itxdl.cn/online/js/index.php?u=5
CTO训练营http://yun.itxdl.cn/online/cto/index.php?u=5
以上就介绍了非专业程序员谈程序员修炼之路 ,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

PiNetwork节点详解及安装指南本文将详细介绍PiNetwork生态系统中的关键角色——Pi节点,并提供安装和配置的完整步骤。Pi节点在PiNetwork区块链测试网推出后,成为众多先锋积极参与测试的重要环节,为即将到来的主网发布做准备。如果您还不了解PiNetwork,请参考Pi币是什么?上市价格多少?Pi用途、挖矿及安全性分析。什么是PiNetwork?PiNetwork项目始于2019年,拥有其专属加密货币Pi币。该项目旨在创建一个人人可参与

需下载 Gate.io 应用程序以开启加密货币之旅?本指南详细列出适用于 iOS、Android 和 Windows 设备的最新版本下载步骤。只需访问官方网站,找到下载链接并根据您的设备选择相应选项。对于 iOS,将直接转到 App Store,而 Android 和 Windows 用户将下载 APK 或安装程序进行手动安装。完成安装后,您就可以启动应用程序并设置您的帐户,踏入加密货币世界。

在Node.js环境中解决第三方接口返回403的问题当我们在使用Node.js调用第三方接口时,有时会遇到接口返回403错误�...

静态绑定(static::)在PHP中实现晚期静态绑定(LSB),允许在静态上下文中引用调用类而非定义类。1)解析过程在运行时进行,2)在继承关系中向上查找调用类,3)可能带来性能开销。

OKX交易平台可以通过移动设备(Android和iOS)和电脑端(Windows和macOS)进行下载。1. Android用户可从官方网站或Google Play下载,需注意安全设置。2. iOS用户可通过App Store下载,或关注官方公告获取其他方式。3. 电脑用户可从官方网站下载相应系统的客户端。下载时务必确保使用官方渠道,并在安装后进行注册、登录和安全设置。

选择合适的比特币看盘软件至关重要,它能帮助投资者实时掌握市场行情,做出更明智的投资决策。本文将指导您如何选择,涵盖个人需求评估(交易频率、分析深度、信息需求及预算)、软件类型选择(交易所界面、专业软件、行情网站/APP)、核心功能考量(数据可靠性、图表工具、自定义设置、社区交流及平台兼容性)以及选择方向建议(成熟金融平台、加密货币聚合平台、社区推荐软件)等方面。 最终,建议您多尝试几款软件并进行比较,选择最适合自身需求的工具。 请记住,软件仅为辅助工具,投资需谨慎,风险自担。

JWT是一种基于JSON的开放标准,用于在各方之间安全地传输信息,主要用于身份验证和信息交换。1.JWT由Header、Payload和Signature三部分组成。2.JWT的工作原理包括生成JWT、验证JWT和解析Payload三个步骤。3.在PHP中使用JWT进行身份验证时,可以生成和验证JWT,并在高级用法中包含用户角色和权限信息。4.常见错误包括签名验证失败、令牌过期和Payload过大,调试技巧包括使用调试工具和日志记录。5.性能优化和最佳实践包括使用合适的签名算法、合理设置有效期、

Node环境下如何避免第三方接口返回403错误在使用Node.js调用第三方网站接口时,有时会遇到返回403错误的问题。�...
