前言 前两天被一条消息给震惊到了: 阿里上半年裁员超1.36万人,今年将新增近6000名应届大学生。 差点以为阿里扛不住了。。。。 裁员这个事大家应该见怪不怪,这两年,我们已经被一波又一波的裁员浪潮,冲激得可以说是麻木了,但是1.36万这个数字还是挺吓人的。 对于企业来说,这是调整经营策略、优化业务架构、节约成本和资源的必要举措,但对于大厂乃至中小厂员工来说,确是实实在在的职场危机。 毕竟大厂出来降维打击,挤占的是小厂员工的工作机会。 那么在变幻莫测的职场中,Android开发要如何实现自救,保全自己呢? 那必然是深入底层,抓住不变量 要知道,底层知识永远都不过时。 专业技术过硬≠对API熟悉...

前言 亲爱的朋友们,今年的就业情况大家有目共睹,大厂不断裁员,高校毕业生1158万,达历史新高 那么今天就让我们一起深入探讨今年的就业形势为何如此困难。如何在这个充满挑战的时刻,更好地理解这个问题,并发现其中隐藏的成长机会。 疫情的冲击 首先,我们不得不提到疫情对就业市场的巨大冲击。全球范围内的卫生危机导致了企业的停工、关闭和裁员,造成了大规模的失业。这是一个无法避免的挑战,但也是一个提醒我们适应变化和发展新技能的机会。 技术变革的崛起 技术正在以前所未有的速度改变着工作和行业。自动化和人工智能的崛起催生了新的职业领域,但也对传统工作产生了冲击。那些不愿适应技术变革的人可能会面临更大的就业困难...

前言 是否有很多Android程序员已经进入了这么一种状态,感觉晋升无望,每天维护同样的模块,写的代码也很少出现bug,即使有bug也能迅速解决,当年对IT的热爱也快要消磨殆尽了。 据统计,今年的毕业生将创历史新高,多达1158万。并不是说所有毕业生都会进入IT行业,但每年进入IT行业只多不少,而一直身处底层的员工,往往也是最容易被取替的。看着同期进来的人不断晋升,工资上涨,但自己却进入激烈的淘汰边缘,这是为什么? 造成这个现状的原因其实就是认知问题,对自我认知以及对外界认知的偏差。吾日三省吾身,把自己和别人做一个简单的对比,承认自己的不足,然后找出自己不足的地方,是技术问题?还是沟通问题?或...

前言 最近一位知名大厂的Android技术主管,跟我透露了他们公司的18道超难的Android面试题,有些题小编看了都觉得很刁钻。 今天小编给大家来做个剧透,你也可以对应看一下,你能回答出来几题? 下面有面试题答案,但是我的建议是先自己思考一下,将自己的答案记下来,再去看答案,对比一下有没有出入,这样就能知道自己的不足在哪里。 1、请说一说HashMap原理,存取过程,为什么用红黑树,红黑树与完全二叉树对比,HashTab、concurrentHashMap,concurrent包里有啥?2、如何开启一个线程,开启大量线程会有什么问题,如何优化?3、GC的流程是怎么样的?介绍下GC回收机制与...

前言 随着纯客户端到Hybrid技术,到RN&Weex,再到如今的Flutter技术,客户端实现技术不断前进。在之前的一个APP项目中,因为历史原因当时选择了weex,随着使用的不断深入,我们逐渐发现了weex的渲染性能问题已经成为一个隐患和瓶颈。而Flutter技术的不断成熟和流行,Flutter的良好的跨平台性和高性能优点,不断吸引着我们。 1.Flutter是啥玩意儿? Flutter是谷歌的移动UI框架,可以快速在iOS和Android上构建高质量的原生用户界面。 跨平台开发:Flutter使用Dart语言编写,可以在iOS和Android平台上构建高度一致的用户界面和功能。...

真实的故事 30岁对于程序员来说并不算老,但在互联网行业这个快速变化的领域里,过了30岁的程序员就开始被认为是“大龄程序员”,尤其是在某些公司,面试官会直接问“年龄多大了”这样的问题,让许多程序员感到不安。然而,在一个不断追求年轻化的行业里,30岁的程序员被裁是不鲜见的事情。 我前同事就是这样,30岁了,在公司干了5年,作为技术主管,一直负责公司的技术架构和开发团队的管理,工作一直稳定,业绩也不错。然而,去年年底,公司突然出现了一些问题,资金链出现了问题,业务也不如预期,于是公司开始大规模裁员。 他作为技术主管,本以为自己不会受到影响,但事实却让他大跌眼镜。公司领导告诉他,公司需要优化成本,...

真实的故事 30岁对于程序员来说并不算老,但在互联网行业这个快速变化的领域里,过了30岁的程序员就开始被认为是“大龄程序员”,尤其是在某些公司,面试官会直接问“年龄多大了”这样的问题,让许多程序员感到不安。然而,在一个不断追求年轻化的行业里,30岁的程序员被裁是不鲜见的事情。 我前同事就是这样,30岁了,在公司干了5年,作为技术主管,一直负责公司的技术架构和开发团队的管理,工作一直稳定,业绩也不错。然而,去年年底,公司突然出现了一些问题,资金链出现了问题,业务也不如预期,于是公司开始大规模裁员。 他作为技术主管,本以为自己不会受到影响,但事实却让他大跌眼镜。公司领导告诉他,公司需要优化成本,他...

前言 Electron和Flutter是两种流行的跨平台应用开发框架。它们都可以用于构建桌面应用程序,但是在技术架构和开发经验方面存在一些区别。 架构 Electron: Electron是一个基于Chromium和Node.js的开源框架,允许使用Web技术(HTML、CSS和JavaScript)构建跨平台桌面应用程序。它使用主进程和渲染进程的架构,其中主进程运行Node.js环境,负责系统级操作,而渲染进程运行在Chromium中,负责显示应用程序的用户界面。 Flutter: Flutter是一个由Google开发的开源框架,用于构建高性能、跨平台的移动应用程序。它使用Dart语言...

前言 最近正值“金九银十”时期,但由于就业形势并不乐观,大家对于面试的吐槽也多了几分… 面试前期什么都没准备,导致错失了许多面试的机会… 面试时太紧张了,想说的话都没说出来,发挥不好,很苦恼… 空窗期太久,投简历800余份,都没有回应… 准备了很久的一场面试,但由于候选者太多,最后的回复也只是“回去等通知吧” 对于每一位即将找工作,或者是正在找工作的打工仔来说 面试!一定是一场鏖战,一场自我与理性的对决,一场理想与现实的比拼… 毕竟你需要在短时间内,充分向面试官展示自己的优势,努力推销自己,展示自己的能力和本事 你有没有为面试拼过命? 俗话说,重复性高的事情就一定有规律,面试也是有许多小...

前言 早在2019年,谷歌就推出了JetpackCompose,这是一种使用Kotlin开发原生安卓应用的编写方式,抛弃了常规基于XML的视图来设计应用UI,而是让开发者以声明方式创建设计。 从那时起,谷歌就大力鼓励开发者在安卓应用中使用JetpackCompose,还使用JetpackCompose重构了其PlayStore应用商店。 根据外媒9To5Google的发现,谷歌正使用JetpackCompose逐步重写Android14的设置应用,代号为“Spa”,目前已重构了部分页面,其中包括与应用、通知和语言偏好相关的页面。 JetpackCompose是一个声明式、响应式的UI框架,...

前言 过去几年,Android程序员的薪资水平飙升主要是受到资本推动的结果。随着互联网行业的迅猛发展和创业热潮的兴起,技术人才需求急剧增加,而供应相对有限,导致程序员薪资一度飙升。创业公司以高薪吸引优秀的程序员加入,进一步推高了整个行业的薪资水平。 随着互联网行业的逐渐成熟和竞争加剧,Android程序员的薪资也逐渐回归理性。一方面,技术人才开始相对充裕,竞争压力增加,使得公司在薪资上不再过高激励程序员。另一方面,随着技术的不断普及和进步,一些相对简单的编程任务可以通过自动化工具或者外包完成,从而减少了对程序员的需求。 未来,Android程序员将逐渐演变为一个普通的技术岗位。随着技术的发展和...

前言 对于互联网行业的程序员来说,可能大多数人都是想进一次大厂看看的,有一位34岁的程序员在社交平台上发问,“失业大半年,大厂各种挂,目前只有一个小厂offer,薪资微涨,帮忙分析下要不要去呢。今年34了,没有大厂经验,还有必要努力一下进大厂吗,一直没有大厂经验的话,过几年是不是更不好找工作了。 大厂并不是人人都适合的。虽然大厂可能拥有更好的平台和更高的薪资待遇,但同时也伴随着巨大的竞争压力和内卷化现象。在大厂中,加班、高强度的工作节奏和激烈的内部竞争是常态。 对于一位年纪34岁的程序员来说,可能已经在家庭和个人发展方面有了更多的考虑和责任。此时,选择一份稳定的工作,能够更好地平衡工作与生活...

前言 进入互联网行业做程序员的人,大部分都是普通人,工作的替代性也很强。在互联网,无论是大厂中厂还是小厂,被裁可能性最小的都是管理层或者技术大牛。但是技术大牛或者管理层不是说你想当就能当的,天赋、努力、运气缺一不可。而且这是一个金字塔性的上升通道,大部分人都会被挤下来。因此提前做好职业规划是非常重要的。 Android程序员三个发展方向: 1.技术 资深技术工程师,对于技术比较痴迷,有这方面的钻劲。以后可以去做技术顾问,可能一周只去公司两天,但是拿的工资是非常高的。 初级程序员(薪资6k-15k) 刚刚进入IT行业,做一些简单的项目,写一些简单的代码。写代码的时候还是会依靠复制粘贴的方式完...

数据传递 概览:IntentSharedPreferencesSettingsSystemPropertiesHandlerMessageIBinder Intent 适用于startActivity、startService或sendBroadcast时传递数据。单向传递。 Intent传递简单数据 //存数据 //一次传一个 Intentintent=newIntent(); //value可以是boolean\byte\char\short\int\long\float\double\String\数组\Bundle intent.putExtra(name,value); mCon...

前言 早在2019年,谷歌就推出了JetpackCompose,这是一种使用Kotlin开发原生安卓应用的编写方式,抛弃了常规基于XML的视图来设计应用UI,而是让开发者以声明方式创建设计。 从那时起,谷歌就大力鼓励开发者在安卓应用中使用JetpackCompose,还使用JetpackCompose重构了其PlayStore应用商店。 根据外媒9To5Google的发现,谷歌正使用JetpackCompose逐步重写Android14的设置应用,代号为“Spa”,目前已重构了部分页面,其中包括与应用、通知和语言偏好相关的页面。 JetpackCompose是一个声明式、响应式的UI框架,其写...

先来看看全球开发者的一个使用情况 91%的开发者认为Flutter缩短了构建和发布应用程序的时间 85%的开发者认为Flutter使他们的应用程序比以前更漂亮 85%的人认为Flutter使他们的应用比以前能在更多的平台上发布 再来看看Flutter的定义 Flutter是谷歌的移动UI框架,它可以快速的为iOS和Android构建高质量的原生UI。当前被越来越多的开发人员在使用Flutter Flutter四大主要特性 Flutter具备一个高性能的系统架构,Flutter的代码最终会被编译成原生的ARM代码执行 Flutter有很好的开发体验和开发效率,特别hotreload(热重载...

前言 很多人害怕面试,一想到面试就心里发怵。 实际上,在找工作这件事上,雇佣者和求职者是平等的,双方都希望找到合适的对方。 如果你能从更深层次上理解面试,并进行大量的模拟练习,距离成为“面霸”就不远了。 下面是面试了10家大厂后得出的经验,希望对正在看文章的你有帮助。 模拟面试100次以上 在为面试做准备时,你应该对目标公司做一些调查,仔细准备着装,并进行大量的模拟面试,最好预先演练100次以上。 不要仅仅练习技术性面试问题,还要练习公司文化方面的问题。比如:要练习回答这样的问题:“你在工作之余做什么?”以及“你最近在读的一本书是什么?”。 面对此类问题,要真诚地表达自己的激情和兴趣所在,以...

搬砖多年的同学都有一个经验,那就是Android很多系统级服务包括硬件通信都是一个service。比如说PMS,AMS,WMS等等,我们想要从源码层面去看懂这些服务做了什么?理解跨进程通信就至关重要了,而Android在虚拟机层便提供了一种跨进程的通信方式那就是Service+AIDL,这仅仅是Android跨进程通信在应用层的体现,我们尝试通过理解Android的Service和AIDL的写法,去理解Binder,OK,那就开整。 正文 话说,大多数小型应用都是单进程,这就导致了Service与AIDL的使用其实很少,但是一些中大项目里面,往往都是框架做好了,直接调用,除非一些特殊的业务场...

前言 近年来,随着互联网行业的蓬勃发展,IT人才需求量也在不断增加。但是,如何在众多面试者中脱颖而出,成为一名优秀的Android开发工程师,进入大厂发展并不是一件容易的事。在这个时代,技术实力是衡量一个程序员价值的重要标准之一。 大厂面试一直以来备受关注,因为大厂的面试要求往往更为严格、更为复杂,因此备战大厂面试成为许多技术人员的必修课。然而,在如今竞争日益激烈的互联网行业,面试指南也在不断更新和演变。每个大佬都有自己独到的见解和经验,继续优化和完善面试指南,尤为重要。 随着金九银十如火如荼的进行着,小编专门去整理了近两年的中大厂面试常问的高频面试题,从Java,Android、Andro...

6ReentrantLock的实现原理 这道题想考察什么? 是否了解并发相关的理论知识 是否对于锁机制有个全面的理论认知 是否对于AQS原理有自己的理解 考察的知识点 锁的分类(公平锁、重入锁、重力度锁等等) ReentrantLock实现方式与Synchronized实现方式的异同点 考生应该如何回答 Java中的大部分同步类(Lock、Semaphore、ReentrantLock等)都是基于队列同步器—AQS实现的。AQS原理见《4.5AQS原理》。 在ReentrantLock中有一个抽象类Sync: privatefinalSyncsync; abstractstaticc...

关注 更多

空空如也 ~ ~

粉丝 更多

空空如也 ~ ~