onlyliuxin / f2ap

From fundamental to application/practice
49 stars 4 forks source link

欢迎大家把自己的想法回复到这个帖子后面 #1

Open onlyliuxin opened 6 years ago

onlyliuxin commented 6 years ago

注意:避免泛泛而谈,需要找出一个特定的技术点及其应用

之前各位同学已经在石墨文档中写了不少, 下面是我选择的比较合适的

你的大名 基础知识点 基础知识的应用 备注
14703250 B+Tree 数据库索引
14703250 函数调用
774320139 底层实现原理是什么? volatile关键字和syncronized关键字
512019771 Hash, 链表,红黑树 HashMap 其实HashMap本身也是一个基础的数据结构
564229410 512019771 内存分配?? new 对象 jvm 所做的事情
414267996 PV操作 互斥锁及条件变量 感觉PV操作和互斥锁/条件变量等都位于同一级别, 可以作为上层锁的基础
14703250 操作字节码 Java动态代理和CGLib等
14703250 非对称加密,Hash算法 Https
14703250 关系运算 所有关系型数据库
610238501 Paxos、zab zookeeper
@sigma65535 图的算法 游戏开发中,经常碰到玩家人物要去收集某个道具,需要计算玩家人物与道具之间的路径是否联通,并搜索相应的路径。这个需要图的生成树,路径遍历等算法
@itguang LXC docker容器
@GankBug 位运算 2^1+2^2=6,通过位运算可以直接把6拆成多个2的幂次方相加,假如角色用2的幂次方表示:一级管理员(2^1),二级管理员(2^2),.。。。。。。N级管理员(2^N),详细说明:我们可以在user表role_id字段存所有角色的之和(比如上面的6),每个角色就用 2的某个幂次方表示,假如 张三 的角色用38表示,那么直接位运算可以知道38=2^1+2^2+2^5 ,也就是表示张三的角色
@truistic Java JNI 机制原理 使用 Java 调用 C/C++ 代码,Android 中 NDK 开发
@lvchongxin bio ,nio tomcat7, tomcat 8使用nio带来的好处
onlyliuxin commented 6 years ago

对于之前在石墨输入过的同学,需要细化一下,也搬到这里来吧

javassm commented 6 years ago

http协议 三次握手 引深到get post请求 ajax 异步

liuxin : @javassm , TCP 协议是三次握手,是http(get,post 等)等应用层协议的基础, ajax 是异步的http调用。 总的来说,基础应该是可靠的传输原理

jiancloud commented 6 years ago

spring里用到的设计模式

liuxin : @jiancloud 你的意思是设计模式作为基础, spring 作为应用?

sigma65535 commented 6 years ago

基础知识点:图的算法 基础知识的应用 : 游戏开发中,经常碰到玩家人物要去收集某个道具,需要计算玩家人物与道具之间的路径是否联通,并搜索相应的路径。这个需要图的生成树,路径遍历等算法。 基础知识点:机器学习算法 基础知识的应用 : 游戏开发中,BOSS的难度设置,攻击玩家的使用的技能等。[这个我也不会^^^^]

liuxin : @sigma65535 图的算法这个很不错,采纳

aappoqqaa commented 6 years ago

文件上传

sunzihu commented 6 years ago

多线程,同步锁

xiasf commented 6 years ago

(在讲每一篇时都要把参考的资料,文章内引用的内容要给出详细出处,要用写论文的严谨态度对待写文章。可以参考《阮一峰 中文技术文档的写作规范》

liuxin : @xiasf 列举了计算机的很多重要方面, 但是没有列出具体的技术点及其应用,建议再细化下

itguang commented 6 years ago

docker及其虚拟化容器的发展,

一直不明白虚拟化容器的原理,使用上也只是懂得基本操作, 可以介绍一下现在流行的虚拟化技术和容器技术

liuxin : @itguang docker容器及其原理,这个不错,采纳

PalyDota2 commented 6 years ago

多大的并发可以认为是高并发,对于高并发有哪些技术可以进行处理,对于写操作多的并发请求,后台需要进行哪些处理才能保证事物和原子性操作,如果对于同一个数据库或者表的,那应该怎么处理比较好,

liuxin : @PalyDota2 似乎没有展示具体的基础技术点及其应用啊

DonkeyMr commented 6 years ago

链表 linkedList liuxin : @DonkeyMr 没有列出应用啊 @onlyliuxin 抱歉,这个是我没有表达清楚,我是把linkedList作为应用了,其实linkedLIst也是数据结构才对

LiWenGu commented 6 years ago

建议

  1. zookeeper备注可以加上:参考《从Paxos到Zookeeper分布式一致性原理与实践》这本书,以及视频:http://video.tudou.com/v/XMTc4NjM4Nzc1Mg==.html
  2. Java动态代理和CGLib等后面备注可以加上:参考https://github.com/code4craft/tiny-spring,学习AOP和IOC顺便学习spring的项目。
  3. 数据结构后面备注可以加上:参考https://github.com/wizardforcel/think-dast-zh,国外学习java集合中数据结构的开源书的中文版。
  4. 微服务,SOP一直搞不懂是啥
  5. 全文检索的介绍,然后应用有:elasticsearch、solr都搞不懂
  6. 并发多线程,可以再后面备注:建议初学者阅读:《Java并发编程的艺术》
  7. 数据库优化技巧,这个贼他娘重要,我要简单粗暴的那种优化技巧,最好是一个错误的SQL,下面是优化的SQL

liuxin : @LiWenGu 参考资料不错, 可以加上

DonkeyMr commented 6 years ago

@jiancloud http://mp.weixin.qq.com/s?__biz=MzAxODcyNjEzNQ==&mid=2247484151&idx=1&sn=f3d3e63379137f2404ad9acbbb232042&chksm=9bd0af6faca726792746b09065a245ab263261b7945eca1ed8952b554e1d5a3509b638a292fd&mpshare=1&scene=1&srcid=1011v4KMD0g79D5xWSpVM1By#rd

heligui commented 6 years ago

ajax、跨域访问、分页设计

liuxin : @heligui 缺乏基础知识点

GankBug commented 6 years ago

基础知识点:位运算 简介:2^1+2^2=6,通过位运算可以直接把6拆成多个2的幂次方相加,假如角色用2的幂次方表示: 一级管理员(2^1),二级管理员(2^2),.。。。。。。N级管理员(2^N)

详细说明:我们可以在user表role_id字段存所有角色的之和(比如上面的6),每个角色就用 2的某个幂次方表示,假如 张三 的角色用38表示,那么直接位运算可以知道38=2^1+2^2+2^5 ,也就是表示张三的角色是:一级管理员,二级管理员,五级管理员 三个角色

liuxin : @GankBug 这个不错,采纳

jarvischina commented 6 years ago

1.数据库锁,事务等等方面的知识

ghost commented 6 years ago

基础知识点:Java JNI 机制原理 基础知识的应用:使用 Java 调用 C/C++ 代码,Android 中 NDK 开发 备注:想了解 JNI 机制是如何实现的,它的原理是什么

liuxin : @truistic 这个不错,采纳

lvchongxin commented 6 years ago

bio nio tomcat7 和tomcat8 nio带来的好处和变化 以及服务器级别的 tomcat 线程数的 变化

liuxin : @lvchongxin 这个不错,应用层面需要细化, 采纳

weiju-xi commented 6 years ago

java spring应用中 多数据源事务管理

liuxin : @xiweiju 缺乏原理

978412137 commented 6 years ago

好!对于我们经验尚浅的出行者,帮助很大

Lition13 commented 6 years ago

很不错的东西,大家一起加油

vzardlloo commented 6 years ago

好像没有前端的,我加一个,DOM是如何实现的?实现原理。。

liuxin : @vzardlloo 有点意思,DOM本身就是一个非常基础的东西,不妨把它作为基础

BruceZhang0828 commented 6 years ago

如何怎么才算是学好框架and怎么学习框架?

liuxin: @BruceZhang0828 和本主题无关啊

gegewus commented 6 years ago

1.Java多线程调试方法; 2.程序员如何保持精力旺盛; 3.如何设计优秀的软件; 建议刘哥设计一个程序员技术进阶的游戏,那样既可以把各种知识点串起来,又可以系统的进行学习!

liuxin : @gegewus 绝对的好主意, 我一直在想能不能利用MineCraft , 但是还没有找到突破口

budanzzz commented 6 years ago

数据库连接池;事务;数据库的储存过程,视图;这些都是基础的把?挑几个可以编几个故事了

liuxin : @budanzzz 编故事可以有,这个主题的重点是找到基础知识及其应用

YCheng93 commented 6 years ago

数据结构和算法+操作系统,反正不都是围绕这些讲。/机智

Faaxe commented 6 years ago

基础知识点:二进制 与 ‘位’的概念 应用:应用太多了,其极小的内存就表明在各种存储空间上有极大的优势,包括业务上海量数据的去重bloom filter、bitset统计bitmap等,算法上树状数组利用二进制本身的二分,位运算也是极其高效。

LucienHan commented 6 years ago
  1. 多线程及线程池;
  2. 如何设计一个稳定的架构;
IronZheng commented 6 years ago

CPU概念和调度算法,FCFS等

zwallzhou commented 6 years ago

动态代理,和一些常用的设计模式

YangKangJian commented 6 years ago

Socket网络编程。Socket是网络编程中基础,写网络应用程序离不开Socket。

PalyDota2 commented 6 years ago

@onlyliuxin 比方说从代码的层面可以讲一下,锁的机制,如果同一个表需要写入的数据比较多的时候,应该怎么处理,这应该可以结合一下java的并发包的基础知识吧,比方说是java.util.concurrent 下的还有一些列队

ThRePaLi commented 6 years ago

随机数产生 ---> 布隆过滤器

LiWenGu commented 6 years ago

@onlyliuxin 到时候会以什么方式,在什么时间点来讲解文档中的知识呢?