源代码

如何阅读java项目的源代码

送分小仙女□ 提交于 2020-02-04 22:36:23
1、最好了解UML语言; 2、了解代码大致结构,再根据模块详细去看,效果会好一些。 3、每天敲上1千行。。就可以了。。。习惯了就好了。。。慢慢来。。。 比如说 你看书看累了 写个小程序放松下(一般别人是玩游戏放松)- -这样你就可以了解你要看的代码的功能和所用的框架技术,这样在熟悉的基础上就能得心应手了。 不过,我可不相信什么一天敲多少行的代码,你要有目的性的敲,有目的性的敲10行比没目的性的敲100行还有用。什么是有目的性的就要你自己去摸索了。 最后给你提醒下,千万不要相信什么好的程序员要敲几十万行或几百万行的代码,没用,都是屁话,你要有知识进去才有用。 如果对所看的领域不熟悉,可以试着分解项目,找出真正不懂的部分,对比以前的知识储备对比着看 先从整体着手。了解整体框架。再着眼每个细节。 4、先看整体结构,把握思路理解类的作用,然后有必要的话再琢磨细节。 5、先随便拿本java入门书看完,书上的例子照着做完,哪怕抄,要都能理解,然后开始去找例子,先从最小的例子开始看,然后自己写,然后自己加一些自己的想法,有了这些基础再去看别人写的例子,去了解别人的思想,然后转换成自己的,慢慢的你会进步非常的神速。 6、首先要使用帮助分析代码框架的工具,如VC中的class view。我认为这样至少可以减少初看长代码者的很多麻烦,方便熟悉代码的基本框架。 然后是要带着问题去看

Python程序加密

Deadly 提交于 2020-02-02 00:24:57
在实际的工作中,有时候我们需要部署自己的Python应用,但这时候我们并不希望别人能够看到自己的Python源程序。因此,我们需要为自己的源代码进行加密,Python已经为我们提供了这样一套工作机制。   第一种加密Python源代码的方式,是将.py文件转化为.pyc文件,但这种加密方式很容易被反编译,因此实用性并不高。   第二种加密Python源代码的方式,是将.py文件转化为.so文件,这样加密的可靠性非常高,无法被被人破解,也就很好地保护了源代码。 pip3 install cython 来加密 来源: CSDN 作者: 披风秃头侠 链接: https://blog.csdn.net/qq_41371349/article/details/104136663

Idea下 调试Spring源代码

巧了我就是萌 提交于 2020-01-31 19:41:49
1. 下载源代码 https://github.com/spring-projects/spring-framework 我选择版本5.1.x 2. 网上有说需要下载gradle,其实可以不用下载 3. build项目 4. 导入项目 需要注意的是 gradle 版本不对可能会出现很多奇奇怪怪的错误 总之不对的话就重来吧 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists distributionUrl=https\://services.gradle.org/distributions/gradle-5.5.1-all.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists 参考文档: https://github.com/spring-projects/spring-framework/blob/master/import-into-idea.md https://github.com/spring-projects/spring-framework/wiki/Build-from-Source https://www.cnblogs.com/bingco/p/12082955.html 来源: https://www.cnblogs

Linux 通过源代码编译安装软件包

爷,独闯天下 提交于 2020-01-31 17:35:35
其他安装方式 wget下载。 tar 解压 /configure 自动配置。 --perfix 指定安装位置 make -j2 代表使用2两个逻辑的cpu进行编译,可以在一定程度上加快编译速度 make install 把编译好的程序安装到prefix指定的目录 gmake 方便跨平台编译。 gmake -j2 编译后的东西在build文件 make install 后查看安装文件 来源: https://www.cnblogs.com/Brake/p/12245962.html

csapp dataLab

大憨熊 提交于 2020-01-31 11:16:26
Datalab 1.bitXor Ops:7 设计思路: 由于异或运算的结果是相同取0,相异取1 两个数相同的方式有2种:同为1 或 同为0 计算 x&y 和 ~x&~y 上面2个式子只有2个数不同的情况下,才均为0 所以将其分别取反,再做与操作 源代码 int bitXor ( int x , int y ) { return ( ~ ( ~ x & ~ y ) & ~ ( x & y ) ) ; } 2.evenBits Ops: 4 设计思路: 目标是返回0x55555555 只能创建8个bit的数字,故int k = 0x55 将k左移8位得到0x5555 再将其左移16位得到答案 源代码 int evenBits ( void ) { int k = 0x55 ; k = k << 8 | k ; return k << 16 | k ; } 3.fitsShort Ops: 4 设计思路: 考虑到如果x可以表示为16—bit的2进制补码,则其31—15位数字全部都为1或者0 先将x右移15位,将15位以下的内容全部移除 由于int是32个bit再将ans向右移动16位,使其每个bit均为最高位,所以此时其每位要么均为1要么均为0 通过异或操作判断是否ans是否每个位置都是1或都是0 如果均为1或均为0,结果为0,逻辑非以后得到1 源代码: int fitsShort (

程序员专用 源代码管理利器-iCodeRepository V3.0_绿色汉化版介绍

老子叫甜甜 提交于 2020-01-31 10:31:41
iCodeRepository(爱码仓库) 是为程序员设计的优秀的源代码片段和提示管理程序, 你可以用这个工具提升编程效率。 (1)基于文本文件设计, 分类结构采用文件夹模式,工作目录下的所有文本文件都会纳入管理,你也可以用 Windows 资源管理器自行管理; (2)强大的全局书签管理、搜索功能,瞬间定位到你需要的代码; (3)多达 34 种编程语言的语法突出显示; (4)通过类型窗口,可以用拖放方式组织你的代码仓库; (5)方便的导入/导出功能可以自动从 HTML 或 RTF 等文件中提取文本; (6)多种辅助工具如颜色拾取、Spy++、ASCII/键盘查看器可以作为编程的辅助手段; (7)绿色汉化版没有使用限制,不永久修改注册表(临时修改注册表以适应工作环境,结束后恢复注册表并将工作参数保存到配置文件,可以复制到移动硬盘/U盘作为移动的代码仓库。 链接:https://pan.baidu.com/s/1snfswVz 密码:fkll 来源: CSDN 作者: qq_42914801 链接: https://blog.csdn.net/qq_42914801/article/details/104121193

2.HTML基础

試著忘記壹切 提交于 2020-01-31 03:21:20
如果把HTML的学习依序分为三个层次的话,应该是读懂、修改、编写。 【读懂】:只有读懂了HTML,我们才能看得懂网页结构,才有可能运用Python的其他模块去解析数据和提取数据。所以想写爬虫程序的话,一定要先学好HTML基础。 【修改】:在读懂HTML文档的基础上,学会修改HTML代码,是可以做些有趣的事情的,比如修改我女神的微博。看下图: 【编写】:如果达到了这个水平,那就可以去应聘前端工程师了,这是专业的程序员水平了。 当然,我们这一关的学习目标只要达到前两个——读懂HTML、能够修改HTML文档即可。 HTML是什么? HTML(Hyper Text Markup Language)是用来描述网页的一种语言,也叫超文本标记语言 。 打个比方就更好理解了,HTML之于网页就好比建筑图纸之于建筑。 建筑图纸是建筑师设计房子时使用的语言,工匠会根据图纸内容,修建出它所描述的房子。 而HTML文档就是前端工程师设计网页时使用的语言,浏览器会根据HTML文档的描述,解析出它所描述的网页。 上一关,我们讲到向浏览器中输入某个网址后,浏览器会向服务器发出请求,然后服务器就会作出响应。其实,服务器返回给浏览器的这个结果就是HTML代码了。 而紧接着,浏览器会根据这个HTML代码,解析成我们所能看见的漂亮的网页。 查看网页的HTML代码 接下来,我们就来看看

Java入门程序“hello,world!”

自古美人都是妖i 提交于 2020-01-31 00:37:29
1、程序开发步骤说明 开发环境已经搭建完毕,可以开发我们第一个Java程序了。 Java程序开发三步骤:编写、编译、运行。(图片介绍) 2、编写Java程序   新建一个普通的记事本,给其命名为HelloWorld并将文档的后缀名修改为java。切记一定要注意这里HelloWorld 中存在的大小写(如下如所示) 在文档中加入以下源代码(源代码的注释会在后面呈现) public class HelloWorld{ public static void main(String[] args){ System.out.println("Hello,World!"); } } 3、程序运行   Java程序的源代码就已经编写完成,那么现在就需要对源代码进行编译的操作了,编译的命名是谁呢?是javac,它其实就在安装的java文件里,有一个叫做bin的目录文件中存在一个javac,其中javac就代表编译的命名,我们可以通过javac将创建的HelloWorld.java变成字节版文件.class。这里我们需要用到cmd窗口,了解cmd基础使用----› https://www.cnblogs.com/tisnk/p/12230852.html 运行完成后,程序已经输出我们想要的“hello,world!” 内容,再回到之前的文件目录中你会发现此时已经多出了一个HelloWorld

Build tool

我的梦境 提交于 2020-01-31 00:03:24
什么是构建工具 构建工具能够帮助你创建一个可重复的、可靠的、携带的且不需要手动干预的构建。构建工具是一个可编程的工具,它能够让你以可执行和有序的任务来表达自动化需求。假设你想要编译源代码,将生成的class文件拷贝到某个目录,然后将该目录组装成可交付的软件。如下图所示,展示了所描述场景中任务和它们执行的顺序。 每个任务都代表着一个工作单元——例如,编译源代码。顺序是非常重要的。如果所需要的class文件没有被编译出来,那么你是不能够组建构件的。因此编译任务必须先被执行。 本质上,任务和它们的相互依赖被模块化成一个有向非循环图(DAG)。DAG是计算机科学的一种数据结构,包含下面两个元素: 节点 :一个工作单元;就构建工具而言,它指的是一个任务(例如,编译源代码)。 有向边 :有向边也叫作箭头,表示点节之间的关系。在这里,箭头表示依赖关系。如果一个任务的定义依赖于另一个任务,那么所依赖的任务就必须先被执行。发生这种情况常常是因为一个任务依赖于另一个任务的输出。这里有个例子——要执行任务“组装可交付软件”,你需要先执行任务“拷贝class文件到目录”和“编译源代码”。 每个节点都知道自己的执行状态。一个节点——表示一个任务——只能被执行一次。 作为开发人员,你没有必要和DAG图打交道。这个工作是由构建工具来完成的。 构建工具的剖析 理解构建工具中组建的交互、构建逻辑和实际定义