浏览模式: 普通 | 列表
分类: 软件技术 | 1 | 2 | 3 | 4 | >

今天开始做java反编译软件,做个记号

[ 2014-12-21 15:03:08 | 作者: Admin ]
预计半年内完成

软件开发实践的24条经验(收藏)

[ 2013-04-09 13:55:06 | 作者: Admin ]
摘要:本文的这些最佳实践、开发准则都是伟大的程序员的经验总结。Tim Oxley从互联网中搜集了这些最佳实践,并放在了Github上,以供他人查看和补充。希望这些最佳实践能够为你的开发工作带来一些帮助。

1. 不要构建大型应用

构建大型应用的秘诀就是“不要构建大型应用”,也就是把你的应用拆分成若干小应用,然后将这些可测试的小应用组装到一起。——Justin Meyer,JavaScript MVC作者

2. 注重项目质量

当我听到“匆忙做出了能够运行的代码”,我也许不会去使用这些应用程序,因为它们会逐渐丧失可迭代的能力。——Avdi Grimm

3. 不写代码

“Don’t write code”是每一个开发人员都需要学习的最重要的一条准则。目前存在大量重复的、蹩脚的代码(跨项目),在很多情况下,开发者甚至不去仔细看看周围有什么,他们只是一味地编写代码。
...

阅读全文...

OSI七层模型(转贴)

[ 2012-11-11 11:39:09 | 作者: Admin ]
OSI(Open System Interconnection,开放系统互连)七层网络模型称为开放式系统互联参考模型 ,是一个逻辑上的定义,一个规范,它把网络从逻辑上分为了7层。每一层都有相关、相对应的物理设备,比如路由器,交换机。OSI 七层模型是一种框架性的设计方法 ,建立七层模型的主要目的是为解决异种网络互连时所遇到的兼容性问题,其最主要的功能就是帮助不同类型的主机实现数据传输。它的最大优点是将服务、接口和协议这三个概念明确地区分开来,通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯。

目录

模型优点
物理层(Physical Layer)
数据链路层(Datalink Layer)
网络层(Network Layer)
传输层(Transport Layer)
会话层(Session Layer)
...

阅读全文...

无线协议,IEEE 802.11(转贴)

[ 2012-11-11 11:22:54 | 作者: Admin ]
应用层
DHCP · DNS · FTP · Gopher · HTTP · IMAP4 · IRC · NNTP · XMPP · POP3 · SIP · SMTP · SNMP · SSH · TELNET · RPC · RTCP · RTP ·RTSP · SDP · SOAP · GTP · STUN · NTP · SSDP · 更多
传输层

TCP · UDP · TLS · DCCP · SCTP ·
RSVP · PPTP · 更多
网络层

IP (IPv4 · IPv6) · ICMP · ICMPv6 · IGMP ·
IS-IS · IPsec · BGP · RIP · OSPF ·ARP · RARP · 更多
数据链路层

Wi-Fi(IEEE 802.11) · WiMAX(IEEE 802.16) ·
ATM · DTM · 令牌环 ...

阅读全文...

内核api

[ 2012-08-24 17:56:02 | 作者: Admin ]
The Linux Kernel API

This documentation is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty ...

阅读全文...

Wget参数说明(收藏)

[ 2012-07-21 20:03:48 | 作者: Admin ]
Submitted by tom on 2009, May 7, 11:10 AM. Internet

wget 使用指南

wget是一个从网络上自动下载文件的自由工具。它支持HTTP,HTTPS和FTP协议,可以使用HTTP代理.

所谓的自动下载是指,wget可以在用户退出系统的之后在后台执行。这意味这你可以登录系统,启动一个wget下载任务,然后退出系统,wget将在后台执行直到任务完成,相对于其它大部分浏览器在下载大量数据时需要用户一直的参与,这省去了极大的麻烦。

wget可以跟踪HTML页面上的链接依次下载来创建远程服务器的本地版本,完全重建原始站点的目录结构。这又常被称作”递归下载”。在递归下载的时候,wget遵循Robot Exclusion标准(/robots.txt). wget可以在下载的同时,将链接转换成指向本地文件,以方便离线浏览。

wget非常稳定,它在带...

阅读全文...

常用数据结构

[ 2012-06-30 21:02:11 | 作者: Admin ]
伸展树,线段树,跳跃表,哈希表,平衡树
从原理上面来说,我们通常所说的nat实际上已经不是传统的1对1(1个外网地址对应1个内网地址)及多对多(多个外网地址动态对应多个内网地址)的模式了,通常来说是1对多(1个外网地址的多个端口对应多个内网地址),例如外网地址200.201.30.41这个外网地址的1025~65535的端口对应192.168.0.0/16的地址块,即多个内网ip服用一个ip地址进行internet的连接,也就是pat技术。
通常所说的nat是对网络层的ip地址进行的操作,也就是三层的技术。
而端口映射与pat有一定类似的地方,他是将内网ip的固定的端口映射到防火墙的外网ip地址的固定端口上,并由防火墙代理发布出去。这是四层的技术。
端口映射与pat的相似的地方在于,它们都是基于传输层的端口进行的转换,而不同的地方在于,pat对于端口的使用是空闲随机的,而端口映射的端口映射则是固定的。
从配置的角度来看,对于na...

阅读全文...

跨平台驱动技术

[ 2012-06-16 20:01:37 | 作者: Admin ]
linux 版本繁多,驱动不好找
要是能有一个像java虚拟机那样的,既能跨软件平台,又能跨硬件平台的驱动技术就好了
========================参考=============================
libevent是一个跨平台的事件驱动库,他目前支持Linux, *BSD, Mac OS X, Solaris 和 Windows。
这种驱动是编译型的,不是解释型。
cross-platform driven layer

android app 开发遇到的一些错误

[ 2012-06-14 22:08:08 | 作者: Admin ]
1. Failure [INSTALL_FAILED_ALREADY_EXISTS]
包名一样的程序只能存在一个
2.Installation error: INSTALL_FAILED_CONFLICTING_PROVIDER
已有一个同名的Provider存在。解决方法是修改AndroidManifest.xml中的

<provider android:name="DataProvider"
android:authorities="XXX">
</provider>

即将android:authorities的值修改为别的就可以了。

java 初始化代码块(备忘)

[ 2012-06-02 20:55:35 | 作者: Admin ]
初始化代码块没有函数名,在大括号中间,加上static修饰符就是静态初始化代码块。
被引用的成员必须在初始化代码块之前。

对象的初始化顺序:首先执行父类静态的初始化代码块,接着去执行子类的静态的初始化代码块,执行父类的非静态代码块,接着执行父类的构造方法;执行子类的非静态代码块。再去执行子类的构造方法。

父类静态代码块-->子类静态代码块-->父类非静态代码块-->父类构造方法-->子类非静态代码块-->子类构造方法。

代码行统计方法(备忘)

[ 2012-05-09 20:12:20 | 作者: Admin ]
# find . -name "*.c" -exec wc -l {} \;|awk '{a+=$1}END{print a}'
΢¼ѯ