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 连接对应的源代码文件。 【…

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,我这里批量测试所有…

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

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

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

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

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

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

记录一则 线上域名证书更新及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…

无代理方式实现VMware的迁移?详细解析

在当今数字化时代,数据的安全性和可用性对于企业至关重要。尤其是在VMware转变订阅策略后,原本永久订阅的产品转变为以年付费订阅的形式,导致客户不得不支付更多的费用,大幅增加了成本。同时,客户也对VMware未来发展前…

k8s-kubeapps图形化管理 21

结合harbor仓库 由于kubeapps不读取hosts解析,因此需要添加本地仓库域名解析(dns解析) 更改context为全局模式 添加repo仓库 复制ca证书 添加成功 图形化部署 更新部署应用版本 再次进行部署 上传nginx 每隔十分钟会自动进行刷新 在本地仓库…

人人都写过的6个bug

大家好&#xff0c;我是知微。 程序员写bug几乎是家常便饭&#xff0c;也是我们每个人成长过程中难以避免的一部分。 为了缓解这份“尴尬”&#xff0c;今天想和大家分享一些曾经都会遇到过的bug&#xff0c;让我们一起来看看这些“经典之作”。 1、数组越界 #include <…

Python爬虫:http和https介绍及请求

HTTP和HTTPS 学习目标&#xff1a; 记忆 http、https的概念和区别记忆 浏览器发送http请求的过程记忆 http请求头的形式记忆 http响应头的形式了解 http响应状态码 1 为什么要复习http和https 在发送请求&#xff0c;获取响应的过程中 就是发送http或https的请求&#xff0c…

DMA 链表模式(LLI)深度解析

在进行一次 DMA 读或者写的时候&#xff0c;可以配置多个链表&#xff0c;从而当一个链表的数据传输完成时&#xff0c;会跳到下一个链表的起始地址&#xff0c;并继续传输数据&#xff0c;直到链表的下一个地址为 0。如果 DMA 使能了完成中断&#xff0c;则当 DMA 发送或者接收…