Java程序员实力如何划分?我看有些牛人能单挑一个很大的项目,而有些团队都做得没他好

Python023

Java程序员实力如何划分?我看有些牛人能单挑一个很大的项目,而有些团队都做得没他好,第1张

“我看有些牛人能单挑一个很大的项目,而有些团队都做得没他好”:你说的应该停留在功能的实现上吧。

“一个很大的项目”,对这个所谓的大项目的概念还是很笼统的。不过可以肯定的是,正规项目,都必定采取一种或多种框架,这个框架可能是主流的,可能是自定义的。在面对一个框架项目下,一个人的力量太渺小了。因为你的时间和精力根本就不够去实现这个项目。这样的时间开销太大。

对于程序员来说,个人感觉大致分下面几等:

1:未入门,此类人感觉自己什么都会了,事实上,什么都不懂很肤浅。

2:刚入门,知道自己很多地方不足,甚至根本不懂。

3:熟练,到此为止,仅仅针对于常用对象使用,功能的实现实现,知道常规异常错误的产生原因和解决方法,以及IDE的熟练使用。

4:进阶,开始不满足于对现有代码的满足。开始追求代码的优美,效率,性能,稳定,安全等

5:提炼,以及脱离的现有代码的范围,开始注重代码的重用性,开始彻底的贯彻面向对象的思想,学习GOF中提到的常规的一些设计模式。

补充,到这里为止,如果没有面对至少百级并发的开发项目以及百万级数据查询,那也只能算是60%的程序员,如果处理过,实践过。那算是80%

6:自我提升与实践。到这里,只能算是作为一个80%程序员。还有很多东西要你自己去实践不断自我学习。

以前DOS时代搞过这个。如果你能拿到GB_2312字库,就能做到。将Unicode码转变为GB码,然后高字节-0xA0,乘以94,再加低字节-0xA0,这个结果乘以32,去字库文件里从头偏移这么多,读32字节,按位每16位一行画点就是汉字图形。

图形好像是翻转的,时间长了具体记不清了。

试验了一下,记错了一点。是减手0xA1。下面的这个类的静态方法getDotMap获取一个字的32字节的点阵。每位为1时应该绘制,0时不绘制。

public class ChineseReader extends JFrame{

private static byte[][] dotMap

static{

try{

FileInputStream dotMapFile=new FileInputStream("hzk16")

dotMap=new byte[dotMapFile.available()][32]

for(int i=0i<dotMap.lengthi++){

dotMapFile.read(dotMap[i])

}

dotMapFile.close()

}

catch(FileNotFoundException ex){

ex.printStackTrace()

}

catch(IOException ex){

ex.printStackTrace()

}

}

public static short[] getDotMap(char c){

short[] buffer=new short[16]

int gbCode=Charset.forName("GB2312").encode(String.valueOf(c)).getShort()&0xFFFF

ByteBuffer buf=ByteBuffer.wrap(dotMap[((gbCode>>8)*94+(gbCode&0xFF))-0x3BBF])

for(int i=0i<16i++){

buffer[i]=buf.getShort()

}

return buffer

}

}

假设汉字库文件以“hzk16”命名,存放在同一文件夹中。你自己找不到16点阵汉字库时,找个UCDOS下载,从中能找到的。文件名就是HZK16。

是达内的课程项目吗?

Java语言基础 算法基础、常用数据结构、企业编程规范。

Java面向对象 面向对象特性:封装、继承、多态等。

JDK核心API 语言核心包、异常处理、常用工具包、集合框架,IO,多线程等。

貌似T-ELT就是Tarena - Enhanced Language Training (达内的语言强化训练课程,当然是编程语言,这里也就是java了)