三年程序员的日常

前言

汇总平时的一些思考。

正文

如何快速上手一个庞大的工程?

这个问题,我已经经历过多次,现在的方式:
1、整理基本框架,研读代码规范,熟悉团队开发习惯;
2、熟悉业务和对应模块,复杂细节暂时当黑箱处理,重点研究流程;
3、从本地存储=>UI处理=>网络请求=>同步/异步处理 的过程进行分析,尽快上手业务开发;
4、善于利用Xcode,有call和caller分析调用关系,有view debugger理清视图层级,有lldb可以跟随代码逻辑;
在技术融入的同时,了解团队交流方式,适应工作节奏,也是很重要的一点。

PS:我13号入职,14号装好电脑就被分配需求,并且排期是在16号体验。
项目的工程很庞大,在同事的指导下找到对应的类,接下来就靠自己的解决方式。

产品体验

iPhone的UC浏览器用了2年,QQ浏览器用了半年的用户,对浏览器使用的自我分析。喜欢UC的几个点:
1、奇趣百科,小贱君的日报、神回复等;
2、UC资讯,UC有震惊部、竹鼠、迪拜、鲸鱼屎;
3、UC的小说模式,非常好用,比付费的QQ阅读体验还好;
4、网页浏览结果更好,多年浏览器经验的积累;
5、视频播放体验,UC有半屏模式、可拖动窗口模式、全屏模式;
以上都是UC的优点,通过长时间使用,用户对工具的依赖,工具上的便利性成为竞争壁垒
我在浏览器的几个高频使用点:看小说、看资讯、看视频、看网页、看漫画、下载,UC都做得非常好;
其他的技术指标,省流量、省电量、流畅度,需要理性的数据支撑,但我相信UC也能排在前列(早在诺基亚的时代,UC的省流量模式就是看小说的一大利器)。
那QQ浏览器如何脱颖而出?
QQ系列的产品有自己天然的优势:庞大的社交链和用户群。
在工具的强大性比不上竞品的时候,通过简化使用流程,降低上手门槛,再用自己的平台优势去抢占新用户市场(包括儿童和中老年群体);
在用浏览器浏览资讯的时候,会有评论参与、分享话题的需求,这方面是QQ浏览器的方便之处;通过给浏览器赋予更多社交属性,QB也形成了自己的竞争壁垒;
在留足时间给团队去完善产品的功能与性能之后,未来QB会是UC的一大竞争对手。

在平时的工作中,要思考需求背后的产品特性以及通用性。
每日固定的时间做信息的抽取和总结,在信息繁杂的背景下,养成思考的习惯。

对于三思而后行的看法

首先,在多数情况下,我相信三思而后行是更好的选择。
但习惯是很难改的,这个和个人的性格有关。
像我这么不耐烦的性格,对于三思而后行,总是只能做到一思,二思,经常通盘思考觉得可以,就想着边做边想
这种情况,在生活中习惯后,就会带到工作中。而在之前的工作环境,因为对业务非常熟悉,这种习惯并没有造成什么影响。
最近犯了一些低级错误,先是看错产品的需求文档,在询问产品时才发现是自己没看清楚需求;
第二个是把下版本的内容提前提交,导致灰度分支无法正常创建;
晚上做题的时候,本来自己已经想好解法(但没有把解法写下来),几个细节都考虑过,结果还是不小心陷入越写越复杂的坑;其实之前已经养成先写题意再分析解法、最后实现的习惯,但是今天因为时间紧张,在没有完善的验证解法,就直接开始写,导致花费更多的时间。

对于某些问题,我知道某些流程是容易犯错的,就要规定好这个流程,并且尽可能避免自己越过
在每次碰壁之后,提醒自己分析情况,如果是因为大意,如何避免下次又粗心。

经典重读

计算机主要组成部分:

  • 处理器;
  • 主存;
  • I/O模块;(键盘、鼠标、硬盘)
  • 总线;(模块间通信的支持)

操作系统的功能是什么?
管理协调各种硬件资源,为应用程序提供统一的抽象环境。

如何保证进程运行的独立性?
操作系统会保存进程运行时的所有状态信息,也就是上下文(也叫进程状态,包括PC程序计数器、寄存器、内存数据),通过系统调用中断进程运行,并在中断结束后恢复上下文继续运行原来进程。

线程是什么?
操作系统的最小执行单元,可共享进程的数据。

程序运行的栈是什么?
栈是内存中一组连续的存储单元。

栈内存为什么要用栈结构,不用队列、数组?
堆内存为什么要用堆结构,不用栈、队列?

栈结构特性符合函数调用特征,堆结构特性符合内存分配的特征。

中断是具体有哪些?

  • 程序中断;除0、访问越界等
  • 时钟中断;处理器时钟的周期性中断;
  • I/O中断;I/O设备开始、结束或者异常等情况的中断;
  • 硬件中断;掉电等;

多个中断如何处理?
中断优先级。

hello.c 如何编译成可执行文件?
编译与链接过程的思考

思考🤔:当一个链接器报错,无法解析一个引用时,代表了什么意思?

如果在文件A和文件B都定义了全局变量g,在文件C引用文件A和文件B的变量g,g变量会是哪个文件的变量?
符号冲突,默认无法编译通过。(可以通过编译指令强制编译,具体引用哪个文件,视引用A、B的顺序和编译器特性而定)

静态库和动态库的区别是什么?
详见静态库与动态库的思考

为什么有些错误会到链接时候才发生?
研读《程序员的自我修养—链接、装载与库》

总结

深感自己的不足,充电中。

萌萌的肥熊猫
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,547评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,399评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,428评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,599评论 1 274
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,612评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,577评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,941评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,603评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,852评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,605评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,693评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,375评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,955评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,936评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,172评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,970评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,414评论 2 342

推荐阅读更多精彩内容