android-cn / android-discuss

Android 问题交流讨论坛, 微信公众号:codekk, 网站:
https://github.com/android-cn/android-discuss/issues
Apache License 2.0
4.08k stars 537 forks source link

面试时面试官问你做过的android项目的框架怎么说,难点怎么说? #439

Open zhangmanman opened 8 years ago

zhangmanman commented 8 years ago

最近在准备校园招聘,面了几家小公司练练手,每次面试官问我实习做的app的项目框架,我不知道怎么说。另外项目的难点我也不知道怎么说。 我实现时做的app是在线租赁DVD,用户选择列表上的影片之后,可以假如购物车或者直接支付,还可以查看和选择附近的自助取DVD的机。用了pulltorefresh用于下拉刷新上拉加载,volley用于网络请求,universal-imageloader用于照片墙,百度地图sdk用于定位和选择租赁机,umeng用于分享。 那么我得项目的框架就是第三发框架,还是什么MVC框架等等。
另外,由于我在做app时遇到的一些难点大多是因为知识点的问题,每次花点时间google就解决了,还有就是一些逻辑问题和一些细节问题, 花的时间最久的是照片墙,但是我用universal-imageloader之后这个问题也解决了。导致面试时被问项目遇到的难点时不知道怎么说。

395808 commented 8 years ago

Me,too.Mark!

Haoxiqiang commented 8 years ago

架构并没有一个完全统一的概念,对于一个项目而言,架构我一般理解就是规划构建软件的过程与结果。对于你这个项目而言,你已经认识到自己软件中的组件,那么对这些组件的划分,选择以及最终的运行结果就是一个架构。项目是否稳定,是否易于维护就可以认为是评价你的架构的一个标准。如果面试官问你为什么选择volley而不是其他的通讯库,主流的通讯库的区别,volley的实现原理之类的问题,这也是考量架构的一方面

zhangmanman commented 8 years ago

@Haoxiqiang 恩恩,现在知道怎么说了。我现在volley等一些框架都理解了原理。哎,都是泪啊。。去年错过了秋招,现在春招都不招应届生了,前天面了携程,自我感觉非常好,回答所有问题,后来问hr,hr说不招应届生,直接拒掉我了。。。。

iRoxas commented 8 years ago
    实话实说,你的问题在于你用了一个“工具“就没有问题了。招聘程序员不是招聘组装工!需求里面下拉刷新,网络请求,照片墙,定位等等,这些都应该是你面临的”巨大问题“,本来它们可以用来磨练一下自己的编程实力,和思维方式,但是你google一下就解决了,你在逗面试官吗?这些问题本应是你自己去解决的,但是都交给了”工具“。
    既然没有真正解决问题的经历,自然没有拿得上台面的”难点“解决过程描述,更不用说在解决了众多难点问题后,总结抽象出来的”项目框架“了。哦,原来”难点“和”项目框架“是这么来的,这就是面试官想考的内容。
    对于还在校园的同学来说,一开始面对这些难点也许有点吃力,所以研究别人是怎么解决难点的是非常有效的途径,感谢开源给了我们这些机会。
champion32 commented 8 years ago

可以看一下轮子的源码,了解轮子的实现思路.顺带推荐 www.codekk.com

zhangmanman commented 8 years ago

@iRoxas 谢谢你的指点。现在知道了,要理解轮子的原理,要自己动手造轮子。

zhangmanman commented 8 years ago

@champion32 嗯嗯,我去看看