三年Android开发,竟只会增删改查,被面试官一顿怼!(1)

思维建议:


一、扩大自己的知识面和格局,学习新的技术

这里其实会谈到整个IT行业的问题,技术发展太快了。主要还是一个持续提升竞争力的一个话题。

今天还是桌面开发,明天web开发就成为主流。

好不容易掌握了关系型数据库,No-SQL成为主流。

费了九牛二虎之力,熟练掌握Java, C#等静态语言,发现动态语言GO, Python成为云计算,机器学习的标配。移动开发昨天还是Object-C, Java, 今天就变成Swift, Kotlin。

当然这里不是说让大家紧跟潮流,扼住时尚。那样做除了疲于奔命,累死在工作台,没有其他的结果。其实只要选择一个方向,纵深学习和积累,必有所成。

编成思想和解决问题的思路都是相通的,平时的学习和工作中要善于思考,举一反三。并且做到与时俱进,及时更新自己的知识库和技能属性,保持良好的市场竞争力。做完事情后多思考,怎样做得更好,站在更好的要求上看问题。

二、拓展视野,不要只关注自己的一亩三分地、囿于角色

这种情况其实在职场中多见不仅是初级程序员,甚至工作五年以上的程序员也有类似的问题,不是自己的事情不闻不问,而且危害更大。

公司项目往往大而全,如果仅仅专注自己的那个角落,那么永远都是只见树木,不见森林。

我相信没有老板会介意下面的程序员多承担一些责任,多做一些事情,最后给项目组多一些产出。既然老板不介意,那么就应该大胆的跳出自己的职责范围,多看看公司的其他项目,丰富自己的行业知识。

职责外的事情,帮的上的不要躲避,,努力承担更多的东西。帮助别人就是提高自己,教学相长就是这个意思。况且你这次帮了别人,下次你的项目紧或者遇到技术难题了,受助之人肯定投桃报李,这样就形成了良性互助氛围,整个项目组的产出也同步提升了。

一般来说,公司要提升一个人,最好的策略就是先让候选人做一些将来职位才需要做的事情。做的好,理所当然就要提拔。做的不好,则可以提前发现该员工的问题,暂缓提拔,需要多考察一段时间。这样的试错成本毫无疑问是最低的。

三、多和同事沟通,向同事学习

有些程序员比较内向或者性情有点高冷,须不知三人行,必有我师。多向同事学习,互通有无,对自己以后的发展有百利而无一害。有导师制或者老员工带,情况或许会有所改善,但如果内因没有改变,最终效果依旧不容乐观。

技术开发工作中遇到一些技术难题非常正常,当然独立思考固然可贵,但是公司项目往往有一定的时间限制,优先解决问题永远放在第一位,而不是一个人在那里苦苦挣扎和搜索解决方案。

如果时间压力不大,多思考一下也未尝不可。考虑到交付压力,这个时候就需要积极和同事,技术经理沟通,寻找解决思路,通常情况下,积极的沟通好过自己的单打独斗。

也许同事或者老板的一句话,就应了那句古诗,山重水复疑无路,柳暗花明又一村。与此同时也和同事建立了更好的友谊,在老板心里也留下了做事有方法的好印象。

四、对未来要有想法,多考虑下三五年自己要做什么

作者本人就犯过类似的错误,幡然醒悟的时候,五年时间已经过去了。

程序员的职业生涯里面最初的三年其实是一个非常重要的打磨和规划时期,如果在迷茫中度过,那么事后想起肯定会扼腕叹息,奈何流水已经东去,再无复返之理。

有目标,而没有具体的计划,那么就是一个愿景而已。

建议不管是初级还是高级程序员,都应该积极向前辈或者直属老板沟通,看看他们有没有值得借鉴的规划和建议。

职场大忌就是被动等待命运的安排,作者本人也是在职业生涯初期等待老板来帮我规划未来,到现在为止,十年过去了,也没有等到。。。

所以老板不会主动帮助你规划未来,最重要的事情还是自己对自身的要求和期望。

五、要思考是给自己打工还是公司打工

这也是一个非常好的话题,很多人都没有想明白,甚至包括一些工作十年之久的程序员。

想明白这一点,工作积极性明显就会好太多。自我驱动, 让工作更加有趣和有意义。

国内知名的互联网公司大老板说过一句话,非常值得深思。

“我每年付你20万,五年也就是100万。如果你在这里混日子,那么最后吃亏的肯定是你。你的五年青春就只值100万吗?”

所以职场新人的主人翁意识一定要加强,你要持续提升自己的能力,持续强化自己创造价值的能力。

举个例子,比如说现在公司支付你20万每年,那么你应该有目标能给公司带来远超过20万的收益,多多益善。

你有这个能力,公司肯定也会对你相应回报。如果公司不给你升职加薪,那么一走了之,潇洒痛快。优质的人才从来都是抢着要。

学习建议


在平时的工作之余,我整理了一份Android开发核心知识笔记,主要包含一下几部分,大家在学习的时候可以参考下:

一、架构师必备Java基础

1、深入理解Java泛型

2、注解深入浅出

3、并发编程

4、数据传输与序列化

5、Java虚拟机原理

6、高效IO

二、设计思想解读开源框架


1、热修复设计

2、插件化框架设计

3、组件化框架设计

** 4、图片加载框架**

5、网络访问框架设计

6、RXJava响应式编程框架设计

三、360°全方位性能调优


1、设计思想与代码质量优化

2、程序性能优化

  • 启动速度与执行效率优化
  • 布局检测与优化
  • 内存优化
  • 耗电优化
  • 网络传输与数据储存优化
  • APK大小优化

3、开发效率优化

  • 分布式版本控制系统Git
  • 自动化构建系统Gradle

4、项目实战

  • 启动速度
  • 流畅度
  • 抖音在APK包大小资源优化的实践
  • 优酷响应式布局技术全解析
  • 网络优化
  • 手机淘宝双十一性能优化项目揭秘
  • 高德APP全链路源码依赖分析
  • 彻底干掉OOM的实战经验分享
  • 微信Android终端内存优化实践

四、Android框架体系架构


《设计思想解读开源框架》

第一章、 热修复设计

  • 第一节、 AOT/JIT & dexopt 与 dex2oat

  • 第二节、 热修复设计之 CLASS_ISPREVERIFIED 问题

  • 第三节、热修复设计之热修复原理

  • 第四节、Tinker 的集成与使用(自动补丁包生成)

    第二章、 插件化框架设计

  • 第一节、 Class 文件与 Dex 文件的结构解读

  • 第二节、 Android 资源加载机制详解

  • 第三节、 四大组件调用原理

  • 第四节、 so 文件加载机制

  • 第五节、 Android 系统服务实现原理

    第三章、 组件化框架设计

  • 第一节、阿里巴巴开源路由框——ARouter 原理分析

  • 第二节、APT 编译时期自动生成代码&动态类加载

  • 第三节、 Java SPI 机制

  • 第四节、 AOP&IOC

  • 第五节、 手写组件化架构

    第四章、图片加载框架

  • 第一节、图片加载框架选型

  • 第二节、Glide 原理分析

  • 第三节、手写图片加载框架实战

    第五章、网络访问框架设计

  • 第一节、网络通信必备基础

  • 第二节、OkHttp 源码解读

  • 第三节、Retrofit 源码解析

    第六章、 RXJava 响应式编程框架设计

  • 第一节、链式调用

  • 第二节、 扩展的观察者模式

  • 第三节、事件变换设计

  • 第四节、Scheduler 线程控制

    第七章、 IOC 架构设计

  • 第一节、 依赖注入与控制反转

  • 第二节、ButterKnife 原理上篇、中篇、下篇

  • 第三节、Dagger 架构设计核心解密

    第八章、 Android 架构组件 Jetpack

  • 第一节、 LiveData 原理

  • 第二节、 Navigation 如何解决 tabLayout 问题

  • 第三节、 ViewModel 如何感知 View 生命周期及内核原理

  • 第四节、 Room 架构方式方法

  • 第五节、 dataBinding 为什么能够支持 MVVM

  • 第六节、 WorkManager 内核揭秘

  • 第七节、 Lifecycles 生命周期


    本文包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…

    《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!
    命周期及内核原理**

  • 第四节、 Room 架构方式方法

  • 第五节、 dataBinding 为什么能够支持 MVVM

  • 第六节、 WorkManager 内核揭秘

  • 第七节、 Lifecycles 生命周期

    [外链图片转存中…(img-oAgAkQ3y-1715169377721)]
    本文包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…
    [外链图片转存中…(img-sxVNVI91-1715169377722)]
    《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!

  • 26
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java开发后台接口和Android客户端增删改查实例可以通过以下步骤实现: 1. 后台接口部分: 首先,我们需要搭建一个Java后台服务器,可以使用Spring Boot来快速搭建一个Restful API。在服务器端,我们可以定义不同的接口来实现增删改查功能。 - 建立一个Controller类,用于处理HTTP请求和响应。可以使用 @RestController 注解来标识该类为一个控制器。 - 在Controller类中,定义不同的路由来处理不同的请求。例如,可以使用 @GetMapping 注解定义一个路由来处理GET请求,@PostMapping 注解定义一个路由来处理POST请求。 - 在路由处理函数中,可以使用不同的逻辑来实现增删改查功能。例如,可以使用数据库操作来实现数据的持久化、更新和删除。 2. Android客户端部分: 在Android客户端中,我们需要使用Java语言来开发。 - 在Android Studio中创建一个新的项目。 - 创建一个与后台接口对应的数据模型类,用于存储从服务器获取的数据。可以使用Retrofit等库来简化网络请求。 - 在Activity或Fragment中,根据用户操作进行增删改查请求,并将请求结果展示给用户。 - 使用RecyclerView等控件来展示查询结果,并在需要时实现数据的增删改功能。 通过上述步骤的实现,我们可以实现一个简单的Java后台接口和Android客户端的增删改查功能。当用户在Android客户端进行相应的操作时,客户端会发送相应的请求到后台接口,后台接口会进行相应的处理,并返回相应的结果给客户端。客户端可以根据请求结果对数据进行展示、新增、修改和删除操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值