2017.4.18

阅读了 <C Expert>,感觉很多东西确实是 C 语言的高级用法,这些到现在都还么有用到过。

比如对c文件的检查工具,lint, cscope,indent,还有的就是编译器携带的

对二进制的查看工具,strings,ltrace,strace

查看二进制符号的一些工具,ldd,nm,size,disassembler,objdump等

初步计划是学会 GDB 的编程技巧,使用多现编调试和多进程调试,使用到栈帧 bt full , frame 的调试方法


看到池老师的微信公众号的文章,对于程序员进阶之道,又有了一点心得认识,学习语言或者学习技术,不能基于某一个点,应该基于某一个平台来学习自己的技术栈。

比如学习c#等基于.net 平台,学习Java基于java EE 平台,那么我学习 c/c++ ,基于什么平台呢,我的思考是,基于 linux 平台,做服务器方向。

linux 服务器方向需要懂得的知识很多,基础知识,最基本的就是操作系统,计算机网络,c/c++,数据结构和算法等。

我准备构建的技术栈路线是,汇编作为底层调试手段和理解操作系统底层实现原理的手段,是需要学习的一门语言。这也是针对 C 语言高级编程技巧的一个手段,能够提高程序的性能,但是对平台或者系统的依赖性比较高,可移植行不高。

语言以c/c++作为基础语言方向,向上为 lua 语言,一般在服务器中会通过内建 lua 环境 的方式,兼容lua脚本,这种架构更加易于扩展

在通过 golang ,即 go 语言做系统服务,go 语言轻便,简单,特别适合做服务器方向。

当然,还需要了解基本的服务器高并发和相关框架,以及设计模式的知识,这些也是我现在迫切需要完成学习的内容。

目前只要的学习方向,心里有一个初步的调整计划和方案,就是现在把去年 redis 源代码为学完成的这个月研究完,然后重点研究 redis 是如何在内部构建 lua 环境的,是否能够通过这种方式,应用到我现在的工作中来,如何实现易扩展的方式。

然后就是 GO 语言,同时,针对 C 的一些高级特性,还有 C++ 的 template 都需要学习。

今年的奋斗目标,就是在12月份,完成这个只是体系的初步构建,心中对这个技术栈有一个明确的方向和理解。

一年的时间,还有八个月,八个月能够做很多的事情,还需要寻找合适的工作机会,加油。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 180,248评论 25 708
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 16,569评论 4 61
  • #幸福是需要修出来的~每天进步1%~幸福实修08班~8唐洁-富阳# 20170903(77/99) 【幸福三朵玫瑰...
    你谢谢阅读 215评论 1 4
  • 单从外观来看,很多人会将菠萝蜜误认为是榴莲。的确,本人最初也曾认错过,后来经过对比后才发现才明白菠萝蜜大多会比榴莲...
    执笔青衫阅读 1,032评论 0 1
  • 一 每年回家的时候,奶奶总会拉着我的手说“在北京念完书就赶紧回来吧,那里鱼都吃不到。”我笑笑说:“怎么会吃不到鱼呢...
    职问师姐阅读 747评论 1 9

友情链接更多精彩内容