我开始了一份android应用程序开发人员的工作。一周后,他们发现我准备应用程序的速度不够快,所以他们解雇了我,并为我提供了一个免费的实习机会。
我想知道怎样才能很快好起来。我应该读更多的书吗(我想我错过了架构方面的东西)?我应该读些什么?我是应该开始编写代码,还是应该做一些类似的课程?
我从head first开始阅读设计模式。Java设计模式对我的android有帮助,还是不适用于Android。基本上我是在家里读android的东西。公司说当我足够好的时候他们会让我回去,所以我需要尽快好起来。
发布于 2011-03-30 16:06:05
最好的学习方法( imho )是通过查看已经编码的项目并丢弃它们。试着理解程序是如何组成的。然后再做一些教程,然后再展开!
资源:
Java:http://download.oracle.com/javase/tutorial/java/index.html
安卓教程:http://p-xr.com
发布于 2011-03-30 16:55:39
我假设你是一个非常小的公司里唯一的开发者。如果我错了,有多个开发人员,那么他们应该做设计和架构,你不应该担心这一点--只需编写他们提供给你的代码部分即可。
因此,剩下的部分都是基于您是唯一的开发人员的假设。
不要担心架构或设计或任何东西--尽可能快地把GUI组合在一起--这一切都是关于你能展示什么。即使它背后什么都没有,它也是明显的进步。
一个架构良好的解决方案将在未来为你节省大量的时间,但从它的声音来看,你没有经验,而且一个架构良好的工作也是前置的。在你展示任何东西之前,你需要花费更多的时间。这听起来不会让你的雇主高兴。
实际上,我会在某个晚上花2到3个小时研究一些“XP的项目管理和设计部分”(你可能一开始必须在你自己的时间做这件事--但如果你的报酬是0美元,那么你现在所有的时间都是你自己的时间)。
XP就是让你的流程对你的客户透明(在这种情况下,你的客户就是你的雇主)。这使他们能够理解为什么某些事情可能需要时间,这实际上允许他们在飞行中做出决定,以纠正问题或通过消除功能来加快过程。
我会先把每项任务写在一张纸上。这些任务中的每一个都应该花费几个小时到一两天的时间来使它们变得非常细粒度,但不要写下时间估计,相反,当你完成卡片时,检查它们并将它们都排在难度1-5的级别(当你看到XP是如何进行时间估计的时候,目的就变得很清楚了)。
然后你开始与你的员工互动-他们选择他们想要在一天/一周完成的任务。你去做吧。
当你在执行任务时,你可能会遇到新的任务,或者不得不分解一些任务。这是意料之中的--做更多的纸。如果你的雇主想知道它什么时候能准备好,看看如何做燃尽表和时间预测。在XP中,这种做法很好地考虑到了程序员在估计时间方面的糟糕表现(它使用您的历史记录和难度1-5的排名来确定"2“实际上花费了您多长时间。
在实施此实践后不久,决定他们希望您维护哪些指标才能获得报酬,或者查看他们是否希望按任务向您支付费用。
另一方面,他们这样对待你只是因为你允许他们这么做。你现在被解雇了,开始找别的工作吧。如果你找到了,就走吧。
发布于 2011-03-30 16:19:33
最好的学习就是实践。如果你不练习,所有的阅读都无济于事。
设计模式可能会有所帮助,但许多经典的智慧可能不会直接应用-如果只是因为设备的内存有限。
以JavaBeans方法为例,在这种方法中,bean必须有一个getter和setter。在Android (早于2.3iirc)上,这对性能有负面影响,因此将字段公开并直接使用它们是首选。
要学习,可以选择一个开源项目(例如,我的Zwitscher app),使用它,试着找出你想要改进的地方并改进它。
https://stackoverflow.com/questions/5483563
复制相似问题