作者tbpfs ( http://pse.is/tbpfs )
看板Soft_Job
标题Re: [讨论] 这样能进入软体业吗??
时间Sun Oct 18 18:09:44 2020
※ 引述《milk6449 (Charles)》之铭言:
: 背景:私大学士 非本科系毕业/ 无任何相关经验/ 22岁
: 预计当兵到12月退伍,想走Android的软体工程师
: 但碍於非本科系,手边上有关Android作品只剩有大学的毕业专题。都是边看上网教学边
: 跟着操作,不懂就找Stackoverflow,或找YouTube和看一些Android官方的文件
: 作品在这
: https://github.com/milk588093/Snoring-detection
: 内容大概就是用自制的电路板传送鼾声讯号给arduino做演算法的处理,再将结果经由蓝
: 牙传输到app做分析(....)
: 求大大们可以为小弟指一下方向
: 1.面试看到这种作品会丢出哪些问题?
: 2.哪些地方需要修改或很怪的??
: 拜托版上的高手们了!!!
:
简单的帮你review一下
一般而言,面试官很忙的,所以会没时间去把你的code拿下来build过在安装
所以如果你觉得写得很好的话,建议直接放上google play这样面试官有机会把玩
然後我看code是有一定质量,所以junior的码农缺基本上是没啥问题的
(Android的缺一直都很多,但学的人比前端相对少
我真心认为学android比学前端好找工作XD)
所以你可以安心地去找工作投履历了。
至於你推文提到不懂资料结构和演算法,可以看这系列补一补
资料结构:
http://l.ovoy.click/dataStructure
演算法:
http://l.ovoy.click/nq556
不过补完了也不用太高兴,这只是入门而已,真正要搞的是後续的刷题
不过也不用太紧张,初阶的engineer也不太需要考演算法
好,接下来进入正题
code review
https://github.com/milk588093/Snoring-detection/blob/master/app/src/test/
java/com/example/project1220/ExampleUnitTest.java
一开始看到你有写test code我眼睛一亮
哦~这个专业,结果点进去
public void addition_isCorrect() {
assertEquals(4, 2 + 2);
}
........................................
痾...有事吗?
与其写这东西,不如把档案拿掉。
不过强烈建议写好test code面试大加分
然後点进去
https://github.com/milk588093/Snoring-detection/blob/master/app/src/main/
java/com/example/project1220/welcomeActivity.java
new Thread(new Runnable()
{
@Override
public void run()
{
try{
Thread.sleep(2000);
startActivity(new
Intent().setClass(welcomeActivity.this,MainActivity.class));
}catch (InterruptedException e)
{
e.printStackTrace();
}
}
}).start();
我不知道你写这个的目的是什麽
但是Thread.sleep(2000)基本上是大忌
然後
Calendar c = Calendar.getInstance();
就算很直觉c是calendar 还是请你打 calendar
junior和senior的差别就是这麽简单,别怀疑
https://github.com/milk588093/Snoring-detection/tree/master/app/src/main/
java/com/example/project1220/ui/notifications
koo.java ploo.java
这两个档案的命名会毁了你整个好程式
tvContent.setText("" + Utils.formatNumber(ce.getHigh(), 0, true));
不要这样写,至於为什麽,就给你当功课
private MutableLiveData<String> mText;
我不知道你为什麽这边取名叫mText
但是看到m先给你加10分
无论你是copy来的还是知道其含意
另外顺便看到mText = new MutableLiveData<>();
没意外的话<>应该可以拿掉
不过好一点的写法是mText = new MutableLiveData<String>();
https://github.com/milk588093/Snoring-detection/blob/master/app/src/main/
java/com/example/project1220/ui/dashboard/DashboardFragment.java
空行处理一下
set1 = new BarDataSet(values, "正常");
中文字一律放String.xml
你不看前後文可以跟我讲
textView77 = root.findViewById(R.id.textView888);
是什麽吗?
https://github.com/milk588093/Snoring-detection/blob/master/app/src/main/
java/com/example/project1220/ui/dashboard/DayAxisValueFormatter.java
if (chart.getVisibleXRange() > 30 * 6) {
hard code数字用static final 定义会加5分
先这样吧
另外你可以去google "面试android最爱考的面试题"
很多面试官也是这样找题目的
--
紫枫碎碎念
YouTube频道:
https://www.youtube.com/user/tbpfs
FB粉专:
https://www.facebook.com/tbpfs2/
blog:
http://tbpfs1.blogspot.com/
从
零开始学会写
程式:
http://l.ovoy.click/itiron
软体工程师薪资大解密:
http://l.ovoy.click/R3M42
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 218.166.4.220 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Soft_Job/M.1603015788.A.8B6.html
1F:→ evo1994: 测试那个是project建起来预设的 应该不是他写的 10/18 18:18
2F:推 newhandfun: 认真有推 10/18 18:24
3F:推 snailpon: 质量等於密度乘以体积 10/18 18:24
4F:推 oioppp: 认真推 10/18 18:31
5F:推 t19960804: 好人给推 10/18 18:37
6F:推 jeff40108: 安卓是真的比前端门槛高,但薪水就不一定 10/18 18:49
7F:推 Csongs: 推好心 10/18 19:04
8F:推 yupog2003: 推好心,给的建议都对第一印象影响蛮大的 10/18 19:35
9F:推 Handsomeshen: 好人 10/18 19:50
10F:推 Sirctal: 程式码很重(拖走) 10/18 20:10
11F:推 skizard: 佛心... 10/18 20:26
12F:嘘 pttano: 明明初级都考bubble sort 10/18 20:30
13F:→ fantasystar: 请问质量是什麽意思? 10/18 20:46
14F:→ JasperChang: 也只是 AOSP coding style 才喜欢那个 m 10/18 20:50
15F:→ JasperChang: 非 AOSP 看到那个 prefix m 我一定先扣十分 10/18 20:50
16F:推 ukuk666888: 推推 10/18 22:07
17F:推 eastwarm: 推好心.....可惜你好久没玩kof 了 10/18 22:16
18F:推 Chen334: 质量 10/18 23:02
19F:推 asdg62558: 推 好人 10/18 23:24
20F:推 Eric0605: 佛心 10/18 23:36
21F:推 chen09885: 安卓第一份起薪几乎有4万以上,抢饭碗的人少有差 10/18 23:38
22F:推 derekjj: 推,好清楚阿 10/18 23:55
23F:推 ftrhalcyon: 推好心 10/19 00:12
24F:嘘 a971364285: 质量 10/19 00:38
25F:推 a78998042a: 推 10/19 00:40
27F:推 iq1000x: 那个m为什麽加10分 10/19 07:55
28F:推 ckscks038038: 推认真... 10/19 08:06
29F:推 cowbaoh: 认真回覆 给推 10/19 08:20
30F:推 SKII588: 你是个好心人 10/19 08:44
31F:嘘 jixian: code的重量单位是啥 10/19 09:46
32F:嘘 B0988698088: 光看到质量就可以先嘘了 10/19 09:51
33F:嘘 GLaDOS1105: 我以为只有 node_modules 才最有质量 10/19 09:59
34F:推 NCUking: 葛莱分多加10分 10/19 10:42
35F:→ NTULioner: thread sleep要看使用原因 不是直接大忌 10/19 10:47
36F:推 ShenJing: 推好心,那unit test是真的满尴尬的XD,也祝原po求职顺 10/19 11:31
37F:→ ShenJing: 利 10/19 11:31
38F:→ chifatty: 这个 code 跑起来会有动能吗? 10/19 12:50
39F:推 sniper2824: 他是说2000是大忌 谁知道2000是什麽magic number 10/19 13:22
40F:嘘 muscle: code很重? 10/19 13:25
41F:嘘 etc276: 质量 10/19 13:30
42F:→ allenxxx: 2000跟200没人收,是商家大忌? 10/19 13:57
43F:→ fantasychese: 不认得预设的unit test然後看见thread sleep就开枪? 10/19 15:07
44F:推 nmns0110: 祝好心人一生平安 10/19 15:31
45F:→ fantasychese: 2000就splash画面停两秒啊 根本超级常见的写法 10/19 16:09
46F:→ fantasychese: 有在写Android的怎麽可能会不知道目的是什麽 10/19 16:10
47F:→ fantasychese: 然後这年头IDE都飞天了不要再鼓吹匈牙利命名法好吗 10/19 16:16
48F:→ fantasychese: 我看到乱抄mVariable还不求甚解的绝对是大扣分 10/19 16:18
49F:→ fantasychese: 推你热心有点基本观念但是不熟就不要这麽高姿态嘛 10/19 16:20
50F:推 sniper2824: 我就想知道谁仔细想一下会不知道是停两秒 10/19 16:26
51F:→ sniper2824: 问题就是不要别人仔细想 看过去就知道啊== 10/19 16:26
52F:推 sniper2824: 你这边来一点hard code 那边来一点hard code 都很好懂 10/19 16:29
53F:→ sniper2824: 就是拖慢别人维护的时间而已啊 10/19 16:30
54F:→ evo1994: 楼主的意思应该是尽量别用sleep把 thread block住 要的 10/19 18:16
55F:→ evo1994: 话用至少也用Handler 10/19 18:16
56F:→ evo1994: 不过匈牙利命名法google已经不推荐了 可能没办法加10分~ 10/19 18:19
57F:推 ap954212: 支那语警察好多 10/19 19:55
58F:推 lukelove: 这code有20公斤 10/19 20:15
59F:推 zmcx16: 推认真review 10/19 20:51
60F:→ testPtt: 我4认为区域变数而已简写不影响啦 10/19 20:54
61F:→ NTULioner: s大 怎麽可能重点在2000这个数字xd 10/19 20:59
62F:→ NTULioner: 连想都不用想 看到就知道睡2秒 10/19 20:59
63F:→ NTULioner: 只是为什麽要睡这件事要知道原因才做 10/19 20:59
64F:→ testPtt: 我以前看人家硬体没设计好只好靠sleep来解决 10/19 21:13
65F:嘘 energyy1104: code的质量怎麽算的? 一个变数一公克? 10/19 22:04
66F:推 yc0015139: 问一下 现在的 IDE 都会把成员变数用颜色标起来 10/19 22:05
67F:→ yc0015139: 那有还必要用 mVariable 之类的 naming 吗...? 10/19 22:05
68F:→ netburst: 就停两秒有啥好想的 10/19 22:29
69F:推 stosto: 以前code效率太好我也是先睡个几秒,过个几个月在减个一秒 10/19 22:32
70F:→ netburst: calendar这个在kotlin力推的scope function连命名都不 10/19 22:34
71F:→ netburst: 不用了还在c 啥 10/19 22:35
72F:推 wulouise: ide可以review code的话就没差,不然m还是方便 10/20 00:57
73F:嘘 nanjolno: 质量 10/20 07:29
74F:推 panbanana: code 是很重吗 10/20 10:43
75F:推 Brinoh: 推好心人 10/20 11:43
76F:推 stfang925: 佛心 10/20 12:13
77F:推 gilingking: 好人推推 10/20 12:14
78F:推 iq1000x: 所以那个m+10分真的是因为用匈牙利就加分喔… 10/20 13:30
79F:→ iq1000x: 我还一直在想原因 因为我以为10年前就已经不建议匈牙利法 10/20 13:30
80F:→ iq1000x: 了 10/20 13:31
81F:推 aids61517: fantasychese呛这麽大你知道什麽叫memory leak吗? 10/20 14:35
82F:→ aids61517: 这种写法刚好是Android memory leak的基本题型 10/20 14:36
83F:→ aids61517: 有sense的都知道要用其他方式实作delay 2秒的功能 10/20 14:37
84F:推 j0958322080: 好多支语警察 10/20 15:02
85F:推 del680202: 支语警察还在混啊 10/20 15:30
86F:推 hiarpu: 推 10/20 16:41
87F:→ zaa0210: 有写名字才有分 10/20 16:56
88F:推 milk6449: 真的好感谢楼上的大大们,但今天要回营区了,假日有时 10/20 17:38
89F:→ milk6449: 间我会好好的看完,感谢帮我review 10/20 17:38
90F:推 Qaucat: 推 10/20 17:42
91F:推 milk6449: 会用2000 10/20 17:55
92F:→ milk6449: 其实只是想让我的app有开机画面而已(好像没其他作用) 10/20 17:55
93F:→ milk6449: 030 10/20 17:55
94F:推 tsl3333: mText对我来说扣分 现在已经不适合了 10/20 19:34
95F:推 Acetoxy: 支语警察出没注意 10/21 02:24
96F:嘘 remember318: 这篇教学的质量被「质量」二字给毁了 10/21 02:38
97F:推 hyouun: 匈牙利法绝对扣分,超难阅读 10/21 11:02
98F:推 diamondsyo: 大大人真好 10/22 00:10
99F:推 jerry771210: 大家嘘的是对岸用语还是一定要写quality或品质? 10/22 00:56
100F:→ shooter555: 为什麽sleep两秒会造成memleak? 10/22 10:27
101F:→ Ekmund: 我也想问质量到底指什麽?就算是用品质或是quality 10/22 14:18
102F:→ Ekmund: 要怎样才能说code "品质很好"? 10/22 14:18
103F:→ Ekmund: 顶多是面对一些架构方式或演算法 听过有人形容elegant 10/22 14:19
104F:→ Ekmund: 但质量这个真的无法理解意义 10/22 14:20
106F:→ aids61517: 里面的1.3 1.4 1.5 1.6都在讲同样的事 10/22 14:28
107F:推 aacj2642: 太好了吧! 10/22 23:09
108F:推 a55028294: 认真推 10/24 20:32
109F:推 samdynasty: 认真推,但匈牙利对我来说真的是扣分 10/25 23:48
110F:推 netburst: 这里会leak的机率? 用post也一样有leak机率 根本无聊 10/26 00:57
111F:→ aids61517: 无聊?这边应用也就刚好很单纯,如果用在更复杂的情况 10/26 13:14
112F:→ aids61517: 像是更新UI元件,就看一堆87用if判断activity.isFinish 10/26 13:15
113F:→ aids61517: 没判断就可能会闪退,後人要解这些问题我才觉得无聊 10/26 13:17
114F:→ aids61517: 如果你是资深工程师的话,说这种话我觉得满失水准的 10/26 13:17
115F:→ aids61517: 就算用Handler也是可以避免leak,别说的好像是Handler 10/26 13:30
116F:→ aids61517: 有缺陷一样 10/26 13:30
117F:推 imjeffreylee: 好人 10/26 13:37
118F:→ netburst: 事实上就是有缺陷 不然哪那麽多文章在写这些 10/26 23:46
119F:→ netburst: 所以我说这里单纯应用会LEAK的机率? 无聊 10/26 23:47
120F:推 streakray: 推 10/27 10:13
121F:嘘 ruthertw: 自吹自己影片,你不害臊?满嘴自以为幽默,有够恶心! 03/21 15:40