惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - 【当耐特】
S
Schneier on Security
Blog — PlanetScale
Blog — PlanetScale
MyScale Blog
MyScale Blog
Apple Machine Learning Research
Apple Machine Learning Research
Google DeepMind News
Google DeepMind News
aimingoo的专栏
aimingoo的专栏
The GitHub Blog
The GitHub Blog
腾讯CDC
A
About on SuperTechFans
H
Help Net Security
The Register - Security
The Register - Security
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 三生石上(FineUI控件)
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Vercel News
Vercel News
V
Visual Studio Blog
T
Tailwind CSS Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
博客园 - Franky
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
D
DataBreaches.Net
I
InfoQ
L
Lohrmann on Cybersecurity
M
MIT News - Artificial intelligence
I
Intezer
博客园 - 聂微东
Webroot Blog
Webroot Blog
宝玉的分享
宝玉的分享
Scott Helme
Scott Helme
Microsoft Security Blog
Microsoft Security Blog
SecWiki News
SecWiki News
Hacker News: Ask HN
Hacker News: Ask HN
T
Troy Hunt's Blog
S
Security @ Cisco Blogs
Application and Cybersecurity Blog
Application and Cybersecurity Blog
D
Docker
N
Netflix TechBlog - Medium
小众软件
小众软件
The Cloudflare Blog
WordPress大学
WordPress大学
N
News | PayPal Newsroom
C
Check Point Blog
Google Online Security Blog
Google Online Security Blog
月光博客
月光博客
C
Cisco Blogs
阮一峰的网络日志
阮一峰的网络日志
W
WeLiveSecurity
Schneier on Security
Schneier on Security

博客园 - 问天

开发笔记1: 范型 C#范型不会用,求助~ Web安全,以新浪微博“郭美美”蠕虫为例 介绍两个Python web框架:Django & Tornado 跟赵姐夫扯 webform的设计 MoSonic:对SubSonic的分布式存储、缓存改进尝试(4) MoSonic:对SubSonic的分布式存储、缓存改进尝试(3) MoSonic:对SubSonic的分布式存储、缓存改进尝试(2) MoSonic:对SubSonic的分布式存储、缓存改进方案尝试(1) Discuz!NT在64位Windows下运行的问题 说说分页 iPhone Web App开发杂感 Katze - 简单的.net "ORM"框架 基于Gettext的asp.net网站多语言解决方案 Django on IronPython and Windows 动态修改.Net StreamReader Encoding编码 恐怖的迅雷 TinyMCE 的音乐插件/mp3 music insert plugin 微软是如何输掉API之战(下)
扯一下抽象
问天 · 2011-06-09 · via 博客园 - 问天

技术人员在选择技术方向投入时,看清楚一种技术能够取得的成长非常重要。

====== 使用抽象 ======
微软的技术中有很多好东西,但是它也有大量为了吸引初级程序员而推出的技术,这类技术的本质就是做高层次封装,让特定场景的开发变得极其“简单”/“快速”。

学习类似这样技术的时候,必须保持清醒,明确了解这些技术实际上仅是在做“抽象”/“封装”,把更多注意力放在它们如何做封装的,封装背后的真正技术是什么上。

如果仅仅是去了解怎么用这些封装,用来“搞定”项目就算数,以这样的态度做技术,则很难会有进步;也特别容易被淘汰。因为学习的,仅仅是别人封装(而且是很高层次的封装)过的东西;而封装的方式时刻都在变,这也就是所谓的“技术更新很快”。

WebForm / WinForm / AJAX.Net等都是如此。在学使用别人封装过的东西时,如果没有学到一些相对“本质”的东西,“知识”的有效性/价值是非常低的。

做技术,需要掌握的是更加“本质”的东西,修炼“内力”;在摆好招式,耍好眼前的刀的**前提**下。

====== 提供抽象 ======

而具体在开发上,我们一直需要面临的是如何做“重构”,做封装,做抽象。

小到一个功能,一个函数,要做怎样的封装,要保留怎样的接口;都是可以琢磨的。

怎么琢磨,怎么做才更好?就我个人的经验,不是在做之前去做深入思考;而是快速的去实现一个感觉可行的版本,然后根据实践结果,做反复/多次的修改。

快速的实现,反复的修改。

一个底层库要怎么设计,先根据现在的能力出一个版本,让大家去用,让自己去用,根据反馈,根据自身体验,**持续**的出新版本。

这里最重要的是后者,持续的改进;如果快速实现了一个烂烂的版本,不再改进,那还不如不要实现。

反复的根据回馈精益求精的做修改,不能“一次搞定”,表面上看很浪费时间,但却是学习提高的最快方式。

更加准确的说,是技术人员在实际工作中提高的最快方式;如果是学生,慢慢的去看书,读大师的著作,那是理想。