Flutter 作为Google出品的一个新兴的跨平台移动客户端UI开发框架,正在被越来越多的开发者和组织使用,包括阿里的咸鱼、腾讯的微信等。
今天,我主要讲解Flutter中文本组件方面的Widget,包括Text、RichText、TextField,希望你们会喜欢。
知识点的准备上:
java基础: 主要考察的点在各种关键字,容器类,多线程相关类,gc相关知识,jvm内存模型。
android基础: 主要考察 四大组件, Handler机制,常用类如sharedPreference,intentService, 自定义view,view点击事件传递,binder机制。
计网: 详细点看一下tcp,udp相关的点,其他知识有个概念即可。
数据结构: 常用数据结构要掌握。
算法: 掌握剑指offer就差不多了。
设计模式: 掌握几种常用设计模式即可…至今只被问了单例和修饰者模式
框架: 建议结合你项目,深入掌握一两个框架。 本人看了eventBus。
在学习上,深度和广度如果无法兼容(时间成本上),本人偏向深度学习。我在面试中,遇到很多问题都答了“不好意思,没了解过”
比如surfaceView,okhttp,插件化,组件化,加固,热更新…以及各种各样冷门问题。 曾跟某大佬级面试官聊过,他认为这些“冷门问题”对本科应届生来说只是加分项,不会也可以接受。要你与否的关键还是在于你的基础扎不扎实。 (对本懒渣来说,能过就好,不敢奢求sp了)
项目上: 准备一个有亮点的项目,有大厂实习最好,没有的话自己包装一下,主要考察的是:实现思路,亮点难点,性能优化。
面试过程中,要尽量引导着面试官跟着你的思路走,尽可能表现出自己的亮点。
比如,让我写单例模式,我会写双重检查锁,顺便讲下DCL失败,由此又能引出很多知识点,工作内存/主内存(意义,副作用),volitale的实现,指令重排的积极/消极意义等等。
(谈知识点时,要注意观察面试官的表情,他有兴趣我们才深入的谈)。
对于开发过程中常用的类,强烈建议自己去看看源码 千万不要只要网上看了几篇讲解文章就觉得会了。。。
ps :我也整理了一些大厂必备面试知识点,以及学习笔记,面试题合集,以及面试大厂需要注意哪些的学习视频,如果现在需要跳槽或者准备找工作的朋友,可以在文末免费领取,也免去了你们自己上网搜集整理的时间!
大厂面试题
含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。)
一面(视频)
1.内部类和静态内部类的区别
2.如何使一个类不能被继承
3.写一个单例模式,保证线程安全的
4.如果你写的这个单例被继承,然后多次实例化,还是单例吗(提示构造方法是private的类不能被继承)
5.代码:带括号的表达式求值,如:1加(3减2)
6.网络五层架构,http在哪一层
7.tcp和udp的区别
8.tcp三次握手过程,为什么要有第三次
9.数据库事务四个性质,一致性是什么
10.死锁是什么,怎么产生,如何避免
11.数组和链表的区别
12.二叉排序树是什么,查找的时间复杂度,怎么降低时间复杂度
13.项目有什么难点
二面(视频)
1.Dalvik和ART的区别
2.虚拟内存是什么
3.CPU32位和64位区别,Android CPU是多少位的
4.手机内部存储目录是什么样的,能不能访问其他应用的目录
5.网络五层架构
6.TCP和UDP的区别,应用场景
7.拥塞控制、流量控制的原理
8.HTTP能用UDP吗
9.HTTP的header有哪些字段,哪个是必须有的
10.HTTP状态码3开头、4开头各是什么意思
11.POST和GET的区别,POST的参数能不能放在url
12.浏览器输入网址到返回网页的全过程
13.进程和线程的区别
14.代码:输入参数x和y,求x的y次方,用尽可能小的复杂度,并分析时间复杂度
15.代码:二叉树遍历,任意写一种
16.1T大小的文件,内容是“用户名 背单词数”的列表,一个用户可能有多个记录,如何找出前十名
17.给一个数组,讲出快速排序第一次划分的过程
18.数据库事务是什么,有什么用
19.说下数据库的索引
20.手写SQL语句:分页,排序,多表连接
21.SQLite如何从版本1升级到100
22.char能不能存汉字
23.int a = new Integer(3)会不会报错
24.int可以表示的范围
25.float怎么存储的
26.catch中return了,finally还会不会执行
27.有几种创建进程的方法
28.有几种创建线程的方法
29.Java中实现线程互斥有哪些方法,synchronized怎么用
30.抛n个硬币,m个正面朝上的概率
31.如何不用额外空间交换两个数
32.给定一个三角形和一个点,判断点是否在三角形中
HR面(视频)
1.你是福建人,为什么想来成都
2.为什么选择自动化专业
3.是怎么想到从事Android的
4.父母是做什么的,同意你到外地工作吗
5.对公司文化了解多少,怎么了解的
6.暑假在脸萌实习感觉怎么样,喜欢吗
7.未来的职业规划
8.期望薪资
9.有没有其他offer,有没有还在面试的
技术面没怎么问项目,考官也说对应届生还是更看重基础和潜力。HR面的时候其实已经稳了,就是沟通一些offer的情况,隔天就发来了offer。十分万幸赶上了秋招末班车,结束两个月的陪跑!
cvte电话一面
项目中遇到的问题,具体负责的是哪个模块
activity启动的生命周期
onstop和onpause的区别
activiytA启动acitityB过程中两个activity的生命周期变化
activity的四种启动模式,说一种吧,比如singleTop
广播,广播的注册形式,一定能收到吗
service和activity的context有什么不同
service的启动方式,bindservice和startService,A启动service,b绑定service要停止服务,要停止多少此,c也绑定service呢
view的绘制流程
事件分发机制,如果一个linearLayout要停止textView的点击事件,要怎么做,重写onInterceptTouchEvent方法,返回true?
java多线程了解吗?java开启线程的几种方式,runable,thread,callable
thread的run方法和start方法有什么不同
多线程的wait和sleep,join方法,停止线程的方法,stop?线程有stop方法?
java的容器有哪些?linkedList的存储结构是怎么样的。
hashmap的存储形式是怎么样的,具体的hash函数是怎么进行的。
了解二叉树吗,结构是怎样的,前序遍历的过程
引用类型有哪些?具体怎么实行
锁了解吗?不了解。有哪些?
jvm的垃圾回收了解吗?判断垃圾的方法有哪些,回收的算法有哪些?怎么进行的。
设计模式了解吗?有哪些,最熟悉的设计模式说一下。
cvte视频二面
项目 提到重构mvp m层和v层怎么解耦的,为什么接口能够解耦
设计原则 单一职责,开闭原则
设计模式 平时有用到哪些,熟悉的哪些 适配器模式,模式的类型,动态的InvationHandler接口
有了解第三方框架吗
glide的寿命周期是怎么做到的
如果要你实现一个缓存,你会怎么设计。先从内存获取,再磁盘,再网络,一般会用到lru算法。 有用过Lru算法做缓存吗。 如果要你设计一个网络请求框架,对于异步模块你会怎么设计
了解surfaceView吗
书籍翻页效果怎么做的,canvas path,动画怎么做的,用属性动画
分层设计
有了解frameworke层的代码吗 说一个,比如activity启动流程
刚刚有提到binder,说一下binder是怎么实现远程通讯的,怎么知道调用的是那个方法,通过code,binder连接池了解吗,换个问法,当调用远程的服务时,当前线程会怎样,我说会挂起,为什么要挂起,不知道。
说一下handler的源码,可以在子线程中使用handler吗,为什么主线程不用loop,messageQueue是什么数据结构?(比较模糊,说优先级队列,他有问是底层的,我说是堆,他也说不对)。了解message的池子吗,是直接new还是obtain,设置池子的目的是什么
实现一个数据结构:栈,考虑泛型、线程同步、扩容问题。
锁要加在那个地方,了解原子性吗,可见性呢
了解泛型擦除吗
平时是怎么学的安卓,为什么选择学习安卓,将来有什么技术方向的打算,有了解谷歌大会吗
cvteHr面
给前两次面试打分,为什么,通过前两此面试的结果,跟岗位的匹配度如何
希望的工作地点
期望的薪酬,为什么,我说跟项目的难度有关,难的薪酬高
工作时间,工作天数
5-10年内的计划,讲了工作方面,之后又问生活方面呢(5年买车,10年买房,如果可能)
你说话为什么有点慢,平时没人跟你提起吗(我说没有,可能我在思考,所以答的慢),有女朋友吗
家里的基本情况
父母的性格,父母谁对你的影响大,父母的性格怎么样,成长过程中有没什么大起大落
工作中最不喜欢的是什么,这时你的态度内心感觉会怎么样
如果没过,你会投哪个公司
如果过了,你可能会因为什么原因没来
压力最大的什么时候,会有什么表现
我总结了一些Android核心知识点,以及一些最新的大厂面试题、知识脑图和视频资料解析。
需要的小伙伴私信【学习】我免费分享给你,以后的路也希望我们能一起走下去。(谢谢大家一直以来的支持,需要的自己领取)
点击这里也可以领取哦!
330页PDF Android学习核心笔记(内含8大板块)
Android学习的系统对应视频
Android进阶的系统对应学习资料
Android BAT大厂面试题(有解析)