程序员学习项目和代码的精髓是什么?
学东西容易。化为己有难。
新手程序员发现自己在最近的几个项目中偷窃了其它项目的思想。当然,并不是真正的“偷”,而是浏览和学习你欣赏的项目和开发者,从中窃取思想。诸如设计模式,重构方法等。Chris是如何处理hub里的命令行参数的?shell脚本和rvm上的Ruby是如何进行韦恩转化的?
当你遇到问题,有点难度、需要你动一下脑子时,你要问“嗨,我怎么实现这个呢?”,这是个不错的问题入手点。
一旦你遇到这种问题,当然,你可以在Google上搜索出一篇文章,找到方案。但如果你从别人哪里“偷”来,你会收获两点:
你的理解和那个特别的项目之间建立了思想上的连接。
你“拥有”了那个思想。
“拥有”你偷来的东西是一种潜移默化的过程,但你可以想象出:你花大量的时间去理解这些思想,你把它应用到解决自己的问题里。这种思想上的过程是很有满足感的。突然灵光一闪,你开始明白为什么作者要重构这个方法,为什么他们需要一个辅助类了。
不要误解;能够自己创造东西当然是最好。这是学习知识达到了另外一种完全不同的级别,大多数情况下都需要我们这样。但有时,从他人哪里学习优秀的经验是一种最快的启蒙方式——不是为了要解决你手头上的问题,而是要本质上理解其中的精髓。
观察别人是如何解决你的问题的,要自己能够理解其中体现的思想,按照自己的观点重新塑造它,让这思想成为“你的”思想,你把它装在自己的脑袋里,以备下一个项目中使用。这也就是“学习”这个词的另一种说法,但就在我想到这种想象的、异样的说法时——哦,这正是几个月前在另外一个项目中从Homebrew哪里偷到的继承策略吗 —— 我接受知识的能力提高了。
一旦你对知识的吸收消化达到了这种水平,那这些外来的思想就成为了你脑海里捻之即来的自有思想了。
免费领取LAMP兄弟连原创PHP视频教程光盘/《细说PHP》精要版,详情咨询官网客服:
http://www.lampbrother.net
http://yun.itxdl.cn/online/cto/index.php?u=5 这,是一个牛X的课程 CTO课程
http://yun.itxdl.cn/online/server/index.php?u=5 移动互联网服务器端开发课程
http://yun.itxdl.cn/online/weixin/index.php?u=5 微信开发课程
http://yun.itxdl.cn/online/yingxiao/index.php?u=5微营销课程
http://yun.itxdl.cn/online/phpcms/index.php?u=5phpcms二次开发课程
|

热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)

Laravel使用其直观的闪存方法简化了处理临时会话数据。这非常适合在您的应用程序中显示简短的消息,警报或通知。 默认情况下,数据仅针对后续请求: $请求 -

PHP客户端URL(curl)扩展是开发人员的强大工具,可以与远程服务器和REST API无缝交互。通过利用Libcurl(备受尊敬的多协议文件传输库),PHP curl促进了有效的执行

PHP日志记录对于监视和调试Web应用程序以及捕获关键事件,错误和运行时行为至关重要。它为系统性能提供了宝贵的见解,有助于识别问题并支持更快的故障排除

Laravel 提供简洁的 HTTP 响应模拟语法,简化了 HTTP 交互测试。这种方法显着减少了代码冗余,同时使您的测试模拟更直观。 基本实现提供了多种响应类型快捷方式: use Illuminate\Support\Facades\Http; Http::fake([ 'google.com' => 'Hello World', 'github.com' => ['foo' => 'bar'], 'forge.laravel.com' =>

您是否想为客户最紧迫的问题提供实时的即时解决方案? 实时聊天使您可以与客户进行实时对话,并立即解决他们的问题。它允许您为您的自定义提供更快的服务

文章讨论了PHP 5.3中引入的PHP中的晚期静态结合(LSB),从而允许静态方法的运行时分辨率调用以获得更灵活的继承。 LSB的实用应用和潜在的触摸
