- 浏览: 3052787 次
- 性别:
- 来自: 海外
文章分类
- 全部博客 (430)
- Programming Languages (23)
- Compiler (20)
- Virtual Machine (57)
- Garbage Collection (4)
- HotSpot VM (26)
- Mono (2)
- SSCLI Rotor (1)
- Harmony (0)
- DLR (19)
- Ruby (28)
- C# (38)
- F# (3)
- Haskell (0)
- Scheme (1)
- Regular Expression (5)
- Python (4)
- ECMAScript (2)
- JavaScript (18)
- ActionScript (7)
- Squirrel (2)
- C (6)
- C++ (10)
- D (2)
- .NET (13)
- Java (86)
- Scala (1)
- Groovy (3)
- Optimization (6)
- Data Structure and Algorithm (3)
- Books (4)
- WPF (1)
- Game Engines (7)
- 吉里吉里 (12)
- UML (1)
- Reverse Engineering (11)
- NSIS (4)
- Utilities (3)
- Design Patterns (1)
- Visual Studio (9)
- Windows 7 (3)
- x86 Assembler (1)
- Android (2)
- School Assignment / Test (6)
- Anti-virus (1)
- REST (1)
- Profiling (1)
- misc (39)
- NetOA (12)
- rant (6)
- anime (5)
- Links (12)
- CLR (7)
- GC (1)
- OpenJDK (2)
- JVM (4)
- KVM (0)
- Rhino (1)
- LINQ (2)
- JScript (0)
- Nashorn (0)
- Dalvik (1)
- DTrace (0)
- LLVM (0)
- MSIL (0)
最新评论
-
mldxs:
虽然很多还是看不懂,写的很好!
虚拟机随谈(一):解释器,树遍历解释器,基于栈与基于寄存器,大杂烩 -
HanyuKing:
Java的多维数组 -
funnyone:
Java 8的default method与method resolution -
ljs_nogard:
Xamarin workbook - .Net Core 中不 ...
LINQ的恶搞…… -
txm119161336:
allocatestlye1 顺序为 // Fields o ...
最近做的两次Java/JVM分享的概要
先前我又发牢骚写了篇避免重复代码——know your library(续),主要是说如果标准库里有了某些功能那我们就别浪费时间在自己的代码里重复实现同一功能。重复实现功能在许多情况下不是什么好事,可能带来更大的维护负担,无法跟随标准库实现的更新而得到更新,等等。
不过Eric Lippert在昨天的一篇文,It’s not magic!,讨论的方向很明显是从另一个角度出发的:假如我要面试一个应聘者,而我的小组正是以实现那些基本功能的库为任务的,那我自然得要求应聘者具备实现它们的能力。Eric举了个“guaranteed-to-be-unique “cookie” value of some sort”的例子,我们也可以用别的例子来类比:如果你的任务就是去实现STL,那么里面的容器、空间分配器、traits等的实现细节当然要知道;如果你的任务是实现操作系统内核,那么C标准库里的malloc()都用不了,你正是应该提供它的人;它们不是“神奇的就存在”在那里的,而是人们分析问题并用代码来解决的。
Hmm,当然我不认为我的观点与Eric的矛盾,只是场景不同而已。不过这又一次提醒我得定时温习基础知识,不然“高级”代码写多了,基础会生锈……
谢谢!我会努力的,基础和高级的部分都不会放松~不,应该说要好好恶补一下基础了,总算开始有时间了……
cajon 写道不写 != 不能
呵呵,可是太久不写就是容易生锈啊。上星期我写C++代码的时候enum块的后面没跟分号害我鼓捣了半小时才弄明白编译器为什么乱实例化我的模板 T T
哈哈,是啊,很久没有动c++,我最近也受了很多这样的苦了。
但是,我不认为我需要经常去复习这些知识。用的时候再查资料吧。我觉的查资料就像是解释执行。记下来就像是编译执行。我们还是找一个更好的平衡点,做JIT吧。
我觉的最重要的是,自己的头脑里应该有这些东西,需要的时候才能够去找相应的资料。比如:贪心算法,背包问题,二叉树,红黑树等等这些经典问题。不一定什么时候,你就会发现了解这些知识可以少走很多弯路呢。
最近的一点感想...
呵呵,可是太久不写就是容易生锈啊。上星期我写C++代码的时候enum块的后面没跟分号害我鼓捣了半小时才弄明白编译器为什么乱实例化我的模板 T T
呵呵呵,有意思……
嘛总之能从上面一直吃到底下的话肯定是没错的,就看有没有那根性钻下去。
不过Eric Lippert在昨天的一篇文,It’s not magic!,讨论的方向很明显是从另一个角度出发的:假如我要面试一个应聘者,而我的小组正是以实现那些基本功能的库为任务的,那我自然得要求应聘者具备实现它们的能力。Eric举了个“guaranteed-to-be-unique “cookie” value of some sort”的例子,我们也可以用别的例子来类比:如果你的任务就是去实现STL,那么里面的容器、空间分配器、traits等的实现细节当然要知道;如果你的任务是实现操作系统内核,那么C标准库里的malloc()都用不了,你正是应该提供它的人;它们不是“神奇的就存在”在那里的,而是人们分析问题并用代码来解决的。
Hmm,当然我不认为我的观点与Eric的矛盾,只是场景不同而已。不过这又一次提醒我得定时温习基础知识,不然“高级”代码写多了,基础会生锈……
评论
7 楼
RednaxelaFX
2009-06-26
ivyloo 写道
其实看优秀的代码是最好的学习方式,
“不要重复制造轮子”是在实践中很有道理的,
但是当我们学习时,应该尝试着自己制造已有的轮子,
通过和已有的那些优秀的比较,才能发现差距,学习也就很快的了。
小伙子,看你年龄随不大,知道的挺多的,
我也曾经有过想你这样的同学,大学时牛的很,但是由于自我感觉良好,
就会变得浮躁,学习不深入了,
所以,建议你,戒骄戒躁,认真踏实的学习,
别像JE中的那些小孩一样整天狂飙技术,而基础不牢,成下一个方仲永,
祝你成功!
“不要重复制造轮子”是在实践中很有道理的,
但是当我们学习时,应该尝试着自己制造已有的轮子,
通过和已有的那些优秀的比较,才能发现差距,学习也就很快的了。
小伙子,看你年龄随不大,知道的挺多的,
我也曾经有过想你这样的同学,大学时牛的很,但是由于自我感觉良好,
就会变得浮躁,学习不深入了,
所以,建议你,戒骄戒躁,认真踏实的学习,
别像JE中的那些小孩一样整天狂飙技术,而基础不牢,成下一个方仲永,
祝你成功!
谢谢!我会努力的,基础和高级的部分都不会放松~不,应该说要好好恶补一下基础了,总算开始有时间了……
6 楼
ivyloo
2009-06-26
其实看优秀的代码是最好的学习方式,
“不要重复制造轮子”是在实践中很有道理的,
但是当我们学习时,应该尝试着自己制造已有的轮子,
通过和已有的那些优秀的比较,才能发现差距,学习也就很快的了。
小伙子,看你年龄随不大,知道的挺多的,
我也曾经有过想你这样的同学,大学时牛的很,但是由于自我感觉良好,
就会变得浮躁,学习不深入了,
所以,建议你,戒骄戒躁,认真踏实的学习,
别像JE中的那些小孩一样整天狂飙技术,而基础不牢,成下一个方仲永,
祝你成功!
“不要重复制造轮子”是在实践中很有道理的,
但是当我们学习时,应该尝试着自己制造已有的轮子,
通过和已有的那些优秀的比较,才能发现差距,学习也就很快的了。
小伙子,看你年龄随不大,知道的挺多的,
我也曾经有过想你这样的同学,大学时牛的很,但是由于自我感觉良好,
就会变得浮躁,学习不深入了,
所以,建议你,戒骄戒躁,认真踏实的学习,
别像JE中的那些小孩一样整天狂飙技术,而基础不牢,成下一个方仲永,
祝你成功!
5 楼
cajon
2009-03-23
RednaxelaFX 写道
cajon 写道不写 != 不能
呵呵,可是太久不写就是容易生锈啊。上星期我写C++代码的时候enum块的后面没跟分号害我鼓捣了半小时才弄明白编译器为什么乱实例化我的模板 T T
哈哈,是啊,很久没有动c++,我最近也受了很多这样的苦了。
但是,我不认为我需要经常去复习这些知识。用的时候再查资料吧。我觉的查资料就像是解释执行。记下来就像是编译执行。我们还是找一个更好的平衡点,做JIT吧。
我觉的最重要的是,自己的头脑里应该有这些东西,需要的时候才能够去找相应的资料。比如:贪心算法,背包问题,二叉树,红黑树等等这些经典问题。不一定什么时候,你就会发现了解这些知识可以少走很多弯路呢。
最近的一点感想...
4 楼
RednaxelaFX
2009-03-22
cajon 写道
不写 != 不能
呵呵,可是太久不写就是容易生锈啊。上星期我写C++代码的时候enum块的后面没跟分号害我鼓捣了半小时才弄明白编译器为什么乱实例化我的模板 T T
3 楼
cajon
2009-03-22
不写 != 不能
2 楼
RednaxelaFX
2009-03-21
night_stalker 写道
我的老师说过:
如果一个咒语是 well-defined 的,那么它是正义的魔法,否则就是黑魔法。
我的老师还说:
80% 的魔法,其构成都是 80% 的正义魔法 + 20% 的黑魔法。
我的老师还补充说:
上面两句咒语是黑魔法。正义的魔法你可以不学,但黑魔法你必须学。
如果一个咒语是 well-defined 的,那么它是正义的魔法,否则就是黑魔法。
我的老师还说:
80% 的魔法,其构成都是 80% 的正义魔法 + 20% 的黑魔法。
我的老师还补充说:
上面两句咒语是黑魔法。正义的魔法你可以不学,但黑魔法你必须学。
呵呵呵,有意思……
嘛总之能从上面一直吃到底下的话肯定是没错的,就看有没有那根性钻下去。
1 楼
night_stalker
2009-03-21
我的老师说过:
如果一个咒语是 well-defined 的,那么它是正义的魔法,否则就是黑魔法。
我的老师还说:
80% 的魔法,其构成都是 80% 的正义魔法 + 20% 的黑魔法。
我的老师还补充说:
上面两句咒语是黑魔法。正义的魔法你可以不学,但黑魔法你必须学。
如果一个咒语是 well-defined 的,那么它是正义的魔法,否则就是黑魔法。
我的老师还说:
80% 的魔法,其构成都是 80% 的正义魔法 + 20% 的黑魔法。
我的老师还补充说:
上面两句咒语是黑魔法。正义的魔法你可以不学,但黑魔法你必须学。
发表评论
-
Christmas Wish 2013?
2013-10-23 12:27 0For me: Apple MacBook Pro with ... -
HotSpot VM的源码阅读活动?
2012-02-23 22:41 26170陆续被许多同好问过HotSpot VM源码阅读方面的问题。 最 ... -
あけおめことよろ 2012版
2011-12-31 22:27 22042照例发篇辞旧迎新帖。 ... -
Hotmail邮箱的POP和SMTP配置
2011-10-07 21:42 45346今天给奶奶在她的iPad上配置live.cn邮箱真是折腾得不行 ... -
IDF 2011北京看到的某平板
2011-09-11 17:59 3104最近可能会连着发几篇 ... -
HP Compaq nx9040的配置
2011-09-07 14:07 0基本参数 型号 Compaq nx90 ... -
MacBook Air,以及之前我的几个笔记本的使用体验(草稿中,慢慢更新)
2011-09-06 23:04 0这不是一篇测评。只是我自己使用的感受。流水帐,想到哪写到哪,慢 ... -
Ultrabook,以及最近关注过的另外一些超便携装备
2011-08-21 16:21 0http://yavaeye.com/p/show/ultra ... -
MacBook Air 965入手
2011-08-11 16:23 9179等了快两周终于到手了… 把主要工作机换成它之后再补充点使用 ... -
[纯水] 草稿箱…
2011-07-25 14:24 2346看到PermGen的讨论一直没消停,但许多人对PermGen的 ... -
身体确实重要
2011-05-27 00:04 4388昨天和今天。过了两天完全没有编程、完全没有JVM的生活。 不过 ... -
几种系统的uname输出
2011-05-05 17:19 3363收集一些uname的输出对比用。 如果有跑Solaris的人路 ... -
gettimeofday与VDSO
2011-04-22 14:12 0vsyscall http://docs.redhat.co ... -
IDF2011见闻——草稿篇
2011-04-18 00:19 0上次去参加了JavaOne之后过了好久也没把资料整理好,帖子差 ... -
转岗成功
2011-04-08 10:14 0正明 不闻不若闻之,闻之不若见之,见之不若知之,知之不若行之。 ... -
[纯水/真相] 奖杯一枚
2011-03-11 18:18 3504好久没拿过啥奖啊什么的了,突然拿到个奖杯形状的东西也挺开心的。 ... -
刚拿到的几张CD
2011-03-09 12:43 2005过年的时候订的几张CD终于到手了。忍不住一晒。直接上图 ... -
i18n bug in Netbeans Platform?
2011-02-24 15:21 0JDK7 build 130 jvisualvm jv ... -
一道题
2011-01-09 23:05 0唔,没做出来,马克 -
JavaOne 2010感想——草稿篇
2011-01-04 22:18 4377本来是想专注记录JavaOne北京2010的见闻,无奈北京站比 ...
相关推荐
总的来说,通过阅读这些文本,读者可以深入理解Eric S. Raymond对于黑客文化的解读,开源软件的哲学,以及在IT行业中如何有效地进行协作和创新。这些内容对于想要在软件开发领域,特别是开源世界中探索的人们来说,...
Please note, the first time you start eric5 it will recognize, that it hasn't been configured yet and will show the configuration dialog. Please take your time and go through all the configuration ...
《Eric IDE 中文语言包与可视化界面设计器详解》 Eric IDE 是一款开源的 Python 集成开发环境(IDE),其设计目标是提供一个简洁、高效且可高度定制的编程环境。Eric IDE 的中文语言包使得中国用户在使用时能够更加...
这个汉化包的适用性非常广泛,即使是最新的IDE版本也能通过它实现汉化,这对于持续关注Eric6更新的开发者来说无疑是一大福音。 安装Eric6_17.12汉化版的过程相对简单。首先,你需要下载这个压缩包"eric最后汉化版....
"eric7-22.1.zip" 是一个压缩文件...总的来说,"eric7-22.1.zip" 提供了一个便捷的方式,使 Elixir 开发者可以快速获取并使用 Eric IDE,尽管它可能不是最新版本,但仍然能够为 Elixir 项目的开发工作提供强大的支持。
Eric6,18.08版。... It provides various features such as any number of open editors, an integrated (remote) debugger, project management facilities, unit test, refactoring and much more.
此外,由于eric6的界面全面支持中文,这对于中国开发者来说是一个巨大的优势,可以避免语言障碍,提高工作效率。在使用过程中,如果遇到任何问题,可以查阅eric6的官方文档或社区论坛,获取帮助和支持。 总而言之,...
"eric5-5.4.1" 是 Eric 开源集成开发环境 (IDE) 的一个特定版本号,这里的 "5.4.1" 指示了这是 Eric 的第五个主要版本中的第四个次要更新和第一次修订。在软件版本控制中,这种格式通常表示主版本.次版本.修订版本,...
**eric6相关安装及汉化包** Eric6是一款基于Python编程语言的...总的来说,Eric6是一个功能强大且易于使用的Python开发环境,尤其对于初学者和需要中文界面的用户来说,有了汉化包的配合,它的使用体验将进一步提升。
**eric5-5.4.6:Python UI开发利器** `eric5-5.4.6` 是一个针对Python编程的集成开发环境(IDE),它为用户界面(UI)开发提供了一个...对于那些希望避免手动编写大量UI代码的开发者来说,eric5是一个值得尝试的工具。
[程序设计抽象思想:C语言描述].Eric.S.Roberts.扫描版
下载eric5-5.1.4.zip,eric5-i18n-zh_CN.GB2312-5.1.2.zip,先解压eric5-5.1.4.zip并安装,然后再解压安装eric5-i18n-zh_CN.GB2312-5.2-snapshot-20110724.zip 手动将eric5-i18n-zh_...
Eric6是一个全功能的Python开发IDE,它本身就是用Python开发的,并且使用了PyQt。Eric6还集成了Scintilla编辑器控制,具有很强大的代码编辑、代码补全等功能。Eric是一个专业的Python项目管理的IDE,它使用了插件...
Raymond五部曲》是一系列由著名IT人士Eric S. Raymond撰写的著作,主要探讨了黑客文化和开源软件的哲学与实践。这五部作品深入剖析了计算机科学领域内的核心理念,从历史背景到现代发展,为读者提供了一个全面的...
这个过程展示了如何自定义Eric的界面以满足个人的视觉需求,尤其是对于视力不佳或者偏好大字体的用户来说,这是一个非常实用的功能。通过掌握QSS,用户可以进一步定制Eric的外观,例如改变颜色主题,调整控件间距等...
在Python的图形用户界面开发领域,PyQt5和Eric6是两个非常重要的工具。PyQT5是一个基于Qt库的Python绑定,提供了丰富的GUI组件和功能,而Eric6则是一款集成开发环境(IDE),专为PyQt设计,集成了代码编辑、调试、...
虚拟光驱 daemon_tools_347cn_eric虚拟光驱 daemon_tools_347cn_eric虚拟光驱 daemon_tools_347cn_eric虚拟光驱 daemon_tools_347cn_eric虚拟光驱 daemon_tools_347cn_eric虚拟光驱 daemon_tools_347cn_eric虚拟光驱...
ERIC6中文语言包最高版本是17-12 .从18-01开始没有新的中文语言包出现,这个也能够支持最新的ERIC6-19 . CSDN现在默认5C币下载.没有C币的我在百度共享了:云链接: https://pan.baidu.com/s/1UDw0r6VyMF4GL1BS4y0HZQ ...
虽然 PyCharm 在专业版上提供了一些更高级的功能,如更强大的Web开发支持、Docker集成等,但 Eric6 作为免费的替代品,其基础功能已经相当完备,对于初学者和小型项目来说绰绰有余。 5. **学习资源与社区** Eric6...
总的来说,`eric4-4.4.18`是Python开发者的一个强大工具,尤其对于初学者来说,它的易用性和丰富的功能可以加速学习过程,提升编程体验。通过深入理解和熟练使用eric4,程序员可以更高效地实现Python项目的开发。