Android布局优化之include、merge、ViewStub的使用,7年老Android一次坑爹的面试经历

前言

开发10年,老码农,曾经是爱奇艺架构

点击领取完整开源项目《安卓学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》

师,东芝集团高级工程师,三星架构师。5年之内频繁被辞退。内心拔凉拔凉的,在这五年理我思考了很多,也意识到了自己的不足。今年趁着疫情把自己知识的不足做了个查漏补缺,在这半年里一边学习,一边面试现在已经拿到了百度T7的offer

下面是我这5年来的经历写成的心得,希望对大家有帮助吧!

IT这个行业

IT门槛低:只要大学是这个专业或者非专业出身经过培训出来的就能进入这个行业。(当然,我并没有歧视IT培训这个意思,我也接触过不少IT培训出来的朋友,同样有很多牛人,包括身边的同事)

IT福利好:前几天国内关于各行业平均薪资做了统计,其中金融是第一位,IT紧随其后,可谓钱景不错。市场环境相对公平,IT行业的公司,内部氛围还是不错的,相对自由平等。只要你努力,为公司为团队体现出应有的价值,那么福利和晋升机会都随之而来。(做政府项目或者国企性质的IT公司有些例外,这些公司大多是以关系和资源为核心而并非以技术为核心,不在本文讨论范围内)

总的来说,对于我们这些大多数普通家庭出身的人来说,进入IT领域是一个能够实现屌丝逆袭的好选择。

工作

提升个人能力的四个步骤。学习、实践、总结、分享。

学习:工作六年基本能做到每月花 100 块买来书,书已经成为了我的生活调味剂,看书已经成为一种习惯。对于技术要保持好奇心,时刻关注最新的行业动态,发展趋势。寻找更高效的方法,更便捷的工具,来提高工作效率,减少加班。给自己留出更多的私人空间和时间,来约朋友吃饭聊天,来陪陪家里人。你工作的做前端的,那么你可以尝试下后端开发。你如果是做后端的,那么可以尝一下前端。你做 android 的,那么你可以尝试下 iOS。你做客户端 native 的,可以尝试下跨平台的各个方案,例如 react native。不要把自己局限在一个领域,要横向拓展技能点。思维拓展之后,有助于你深入。找到了共通点,解决问题的多个思路。

实践:掌握的知识不在于,你硬盘了塞满了教学视频、浏览器收藏夹装满了课程网址、书柜里堆满了书,而在于你能否把学到的知识运用的实际的工作。技术最终的落脚点是解决现实生活中的问题。

总结:有句话说的好,浓缩的是精华。比如说看书,你可以延展阅读范围,不局限于你的本专业,可以是技术、运营、心理、管理,只要你有兴趣都可以去看。但是看了之后最好能对它们进行归类总结,把学到知识用到工作当中。做技术同样,你可以尝试做前端、后端、嵌入式都没问题,不要纠结选择哪个方向更好,重点是去学去动手,积累经验,提升你解决问题的能力。例如本人写这篇日志也是总结&分享的一个过程。从现在开始,利用各种云笔记工具,随时随地记录你的想法。

分享:检验你是否掌握了一个技能点的好方法就是,你能不能够用自己的语言来描述清楚。比如说:你能否跟别人讲明白,你对阻塞和非阻塞,异步、同步的理解,用你自己的理解结合你以往的项目中有关的技术点来展开。

从2015年开始参加各种线下的技术沙龙,认识了很多行业内的大牛。那种XX的交流,思想的碰撞,能带给你很多意想不到的收获。因此我树立了一个近期目标,就是希望能够有一天站在在台上跟大家分享。然而机会还没到来的时候,也就说明我现在暂时还没有能力去做这个事,那么我现在需要继续修炼内功,沉淀,提升文笔和表达能力。有人说花这么大的精力去做这些事会不会影响工作,我却认为利用业余时间做这些事情反倒会对你的工作带来好处。第一点个人能力的提升,对公司来说就是战斗力的提升。第二点你的交际范围扩大了,同时你的人脉也成为了公司的资源。

创业

360 CEO周鸿祎说过一句话,创业的终极目标不是财富,而是一种修行,重塑自我的修行。前两年爬过泰山和华山,特别高需要爬7、8个小时。回忆起来给我最大的感觉是,整个过程就是累,脚都要麻了,几度想要放弃,是队员的鼓励、是渴望登顶的执着,使大家坚持到最后。我是14年初进入互联网创业,这两年给我带来了不一样的体验,能够有机会跟优秀的人一起工作是一件很nice的事情。

同样,创业是风险大的投资,成功的概率不到1%,如果害怕失败就不要创业。那么面对创业失败要怎么调整心态变得及其重要。仍然以登山举例:千辛万苦你终于爬上山顶,往下看到的风景很美,但你不能在此逗留太久,因为山顶的夜晚特别冷,赶在天黑之前下山吧,别舍不得。你若不下山,又怎么能去爬另外一座山呢。因此,你需要学会坦然面对得与失。

生活

关于生活的四个方面:衣食住行。

衣:以前我也不怎么注意穿衣打扮,码农清一色标准就是格子体恤+牛仔裤。几年前开始在某宝、某猫网站逛,买到不合适的就扔,然后继续买,于是买买买、扔扔扔,不要舍不得花钱,一年下来也就一两千(我买的衣服都很便宜),逐渐形成自己的穿衣风格,对着镜子看,你会发现,我去,老子比以前帅多了。有人会说:马云和那谁谁谁穿着很随便,人家都当首富,你穿这么好又不见得你当首富去。

人家是本身有能力然后成为成功人士,只不过个人爱好在于穿衣打扮。而不是因为他不注重穿衣打扮,而成为成功人士。这是两个概念,请不要歪曲事实。不要迷信这些网上的流言,不要老拿别人一个点放大来说。话说,谁会拒绝与那些穿衣得体的人交朋友。因此,在你消费能力范围内去改善你的外在形象,把逼格提高吧。

食:有条件允许的情况下去学一下烹饪,会做饭的男生很贴心、也是你的技能加分点。

住:尽量搬往公司近一点的地方,以前我也有一个观念是,北漂嘛,离公司远一点上下班挤公交挤地铁吃点苦没关系,锻炼毅力嘛,在车上还能看个技术视频学习学习。实际上后来发现这个想法很幼稚,疲惫的身躯。从而将这种负面情绪发泄在工作上。于是我搬得离公司越来越近,从以前的挤公交到骑自行车十几分钟到走路几分钟。(现在直接是住在公司旁边的小区)

行:旅游,去过国内很多个城市,也即将办理护照计划到国外走走。不要老抱怨程序员交友圈子小把不到妹子,不是行业的缘故,是你把自己圈在这里面了。走万里路,才能回到内心深处。读万卷书,才能看清皓月繁星。

总结

其实要轻松掌握很简单,要点就两个:

  1. 找到一套好的视频资料,紧跟大牛梳理好的知识框架进行学习。
  2. 多练。 (视频优势是互动感强,容易集中注意力)

你不需要是天才,也不需要具备强悍的天赋,只要做到这两点,短期内成功的概率是非常高的。

对于很多初中级Android工程师而言,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。

以上就是总结的关于在面试的一些总结,希望对大家能有些帮助,除了这些面试中需要注意的问题,当然最重要的就是刷题了,这里放上我之前整理的一份超全的面试专题PDF,大家有兴趣的可以自行领取或者私信我:

还有 高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料 帮助大家学习提升进阶,也节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习。

【Android核心高级技术PDF文档,BAT大厂面试真题解析】点击:Android架构视频+BAT面试专题PDF+学习笔记即可获取!查看免费领取方式!

s/618156601)即可获取!查看免费领取方式!**

[外链图片转存中…(img-gDzFpv3y-1709726398277)]

这里只是整理出来的部分面试题,后续会持续更新,希望通过这些高级面试题能够降低面试Android岗位的门槛,让更多的Android工程师理解Android系统,掌握Android系统。喜欢的话麻烦点击一个喜欢在关注一下~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/724763.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android开发新手入门教程,2024Android开发社招面试解答之性能优化

前言 本想今年辞掉工作大干一场,没想到碰到疫情,家里蹲了3个月…,还好字节能给一次机会。前阵子字节跳动的提前批开始了,看宣传是说有海量HC,机会多多,本着涨涨面经的心理,然后就投递了一下杭州…

论文阅读:Dataset Quantization

摘要 最先进的深度神经网络使用大量(百万甚至数十亿)数据进行训练。昂贵的计算和内存成本使得在有限的硬件资源上训练它们变得困难,特别是对于最近流行的大型语言模型 (LLM) 和计算机视觉模型 (CV)。因此最近流行的数据集蒸馏方法得到发展&a…

代码随想录算法训练营第11天

20. 有效的括号 方法: 1. 如果 !st.empty() return false2.如果st.top() ! s[i] return false3. 如果 st.empty() return false注意: 以下这种写法 不满足 题目要求的第二点,不能以正确的顺序闭合 if(s[i] st.top()){return true;s…

基于springboot+vue的图书管理系统

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、阿里云专家博主、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战,欢迎高校老师\讲师\同行交流合作 ​主要内容:毕业设计(Javaweb项目|小程序|Pyt…

RabbitMQ如何保证消息不丢

如何保证Queue消息能不丢呢? RabbitMQ在接收到消息后,默认并不会立即进行持久化,而是先把消息暂存在内存中,这时候如果MQ挂了,那么消息就会丢失。所以需要通过持久化机制来保证消息可以被持久化下来。 队列和交换机的…

11. C语言标准函数库

C语言制定了一组使用方式通用的函数,称为C语言标准函数库,用于实现编程常用功能,标准函数库由编译器系统提供,并按功能分类存储在不同源代码文件中,调用标准库内函数时需要首先使用 #include 连接对应的源代码文件。 【…

URL网址中的#是什么意思 -- flutter等单页应用常用的hash路由

前言 在现代的前端开发中,Flutter和React等框架广泛采用哈希路由(Hash Routing)来构建单页应用(SPA)。哈希路由的设计哲学源自URL中的#号,原本用于网页内的定位,但现在它在SPA中扮演着更为关键…

Tensorflow2.0笔记 - 常见激活函数sigmoid,tanh和relu

本笔记主要记录常见的三个激活函数sigmoid,tanh和relu,关于激活函数详细的描述,可以参考这里: 详解激活函数(Sigmoid/Tanh/ReLU/Leaky ReLu等) - 知乎 import tensorflow as tf import numpy as nptf.__ve…

『python爬虫』ip代理池使用 协采云 账密模式(保姆级图文)

目录 实现效果实现思路代码示例总结 欢迎关注 『python爬虫』 专栏,持续更新中 欢迎关注 『python爬虫』 专栏,持续更新中 实现效果 在官网原版demo基础上小改了一下,修正了接口错误(把2023改成2024就可以了),原版demo只能测试单个ip,我这里批量测试所有…

Angular 将一个字符串进行逐字显示的方法汇总

接上文https://blog.csdn.net/qq_44327851/article/details/136201219, 公司项目是angular,所以实际中使用,我是要考虑到应用Angular框架中,下面是我想到的一些方法汇总,欢迎大家检阅! 在组件的HTML模板中…

为什么MySQL中多表联查效率低,连接查询实现的原理是什么?

MySQL中多表联查效率低的原因主要涉及到以下几个方面: 数据量大: 当多个表通过连接查询时,如果这些表的数据量很大,那么查询就需要处理更多的数据,这自然会降低查询效率。 连接操作复杂性: 连接查询需要对参与连接的每个表中的数…

从零学习Linux操作系统 第三十二部分 ansible中剧本的应用

一、什么是playbook及playbook的组成 1.Playbook的功能 playbook 是由一个或多个play组成的列表 Playboot 文件使用YAML来写的 play就是一个个模块用列表的方式体现出来 playbook的语法是用YAML的预防进行书写的 2.YAML 简介 是一种表达资料序列的格式,类似XM…

电子元器件选型与实战应用—10 5000字介绍,用MOS管搭建的8种常用电路

文章目录 1. 逻辑门电路1.1 非门1.2 与非门1.3 或非门2. OD门和线与3. 推挽电路4. 电源防反接4.1 PMOS防反接4.2 NMOS防反接5. 电源防串电6. 缓启动开关电路7. 均流电路8. 电平转换(level shift)前文推荐:

【从零开始学GIS再到精通GIS】专题图制作-地图渲染-地图整饰

本篇主要介绍如何在gis中进行专题图制作-地图渲染-地图整饰;示例数据下载链接该网站更新了很多有关地理的数据。 1 数据准备:点、线、面等矢量数据、栅格数据的准备等(下一更会详细介绍数据处理等方面的内容); 2 加载…

关于我在项目中封装的一些自定义指令

什么是指令 在Vue中提供了一套为数据驱动视图更为方便的操作,这些操作被称为指令系统。我们看到的v-来头的行内属性,都是指令,不同的指令可以完成或者实现不同的功能。 除了核心功能默认内置的指令(v-model和v-show)…

开源计算机视觉库opencv-python详解

开源计算机视觉库opencv-python详解 OpenCV-Python的核心功能:安装OpenCV-Python:使用OpenCV-Python的基本步骤:OpenCV-Python的高级应用:注意事项:OpenCV-Python的高级应用示例:1. 人脸识别2. 目标跟踪3. …

记录一则 线上域名证书更新及cdn证书更新

本篇为阿里云免费证书更新记录。 登录阿里云账号 搜索数字证书管理服务管理控制台 点击创建证书 输入你的域名 填写相关信息(注:域名验证方式选择文件验证) 等待审核通过(时间不久,一般为半小时内) …

Vue2高级篇

Vue高级 Vue生命周期 生命周期又称为生命周期回调函数、生命周期函数、生命周期钩子, 是Vue在运行过程中的关键时刻帮我们调用的一些指函数, 生命周期函数名字不可修改, 其中的this指向的是vm或组件实例对象. 常用的生命周期钩子: mounted: 发送ajax请求、启动定时器、绑定…

【Web安全】SQL各类注入与绕过

【Web安全】SQL各类注入与绕过 【Web安全靶场】sqli-labs-master 1-20 BASIC-Injection 【Web安全靶场】sqli-labs-master 21-37 Advanced-Injection 【Web安全靶场】sqli-labs-master 38-53 Stacked-Injections 【Web安全靶场】sqli-labs-master 54-65 Challenges 与62关二…

python并发编程:IO模型

一 IO模型 二 network IO 再说一下IO发生时涉及的对象和步骤。对于一个network IO \(这里我们以read举例\),它会涉及到两个系统对象,一个是调用这个IO的process \(or thread\),另一个就是系统内核\(kernel\)。当一个read操作发生时&#xff…