麦子学院
篇一:麦子学院
麦子学院是一家专注于IT在线职业教育的网站,官方网站地址为。作为目前国内在线教育的领先品牌,其站内有超过5000+的实名学员,有硅谷IT名师参与录制的Android、IOS、Cocos2D-X开发等IT职业课程。采用导师在线辅导和保薪就业模式的“企业直通班”课程体系在行业内树立了优良的口碑,使一大批IT业内精英聚集活跃在麦子学院的网站论坛里。麦子学院前身为麦可网,是成都麦子信息技术有限公司所经营的核心产品。
成都麦子信息技术有限公司成立于2012年。团队从2011年8月开始坚持专注于IT职业教育,以高质量课程为核心、以业界第一梯度大师为保障、以务实的职业导向为目标。并利用创新模式实现在线交互学习辅导与监控,真正做到因材施教,确保技能学习效果,保障就业,打造高端IT职业教育平台。2014年,公司完成千万级A轮融资,并正式更名为麦子学院。
网站核心产品服务
麦子学院下辖四大业务板块:
1、 OC——在线前沿技能课程。
2014年底会全面覆盖整个IT热门领域,预计还会包含云计算,用户交互
设计,网络工程,计算机安全等领域,并推出JAVA企业实战、IOS7、安
卓4.3、COCOS2d-X3.0、UI设计、微信营销、产品经理、移动互联网营
销等一系列相关课程,预计届时课程数量会突破50套。并且成为国内IT
领域课程分类最精细,质量最高的学习网站。
2、 O2W——在线技能就业培训课程,在OC课程基础上配套管理,监控,指
导,就业等培训服务,确保学习效果。
O2W是麦可网提出的Online To Work(线上学习到工作) 的新型职业教育模式 ,通过这种模式,学员可以足不出户,在线学习并且获得麦可网的
就业双保障服务,真正的实现了在线学习到职业岗位以及后续职业生涯跟
进的系统全面的培养方式 。
3、 O2O——线下软件工厂,在OC与O2W的基础之上进行更高层次的实际
项目研发参与式学习。
Online To Offline ,麦可网的线上线下结合模式的培训,以在线课程为基
础,通过线上课程与软件工厂的合作,有效的把在线学习,技能培养,职
业习惯训练,项目外包有机的结合在一起,真正保证了很高的培养效果 ,
同样也是包就业包底薪 。
4、 麦子圈——麦子学院实名社交圈。 麦子圈是麦可网的核心增值服务,是国内唯一的高端IT实名职业圈子,但
凡麦可网或注册用户学员都可以加入这个圈子,成为麦子圈会员。我们为
会员提供包括职业交友,求职招聘,职业规划,猎头,项目外包,企业培
训,线上线下聚会等一系列增值服务,并且随着麦子圈的业务不断完善和
发展,麦子圈立志成为国内最品质的IT人高端职业圈子。
目前麦子圈可以说是国内IT领域比较有价值的职业实名圈子,我们超过8
成的会员都是在职工程师,而且全部公布自己所在公司以及岗位,从2014年开始,我们也将在各个城市建立,代理,联络人等分支机构,预计第一
批会开通8个城市。同时提供一系列增值服务,让这个精细化的实名圈子
活跃起来。
从2011年8月成立以来,麦可网课程超2000小时,300个门类;讲师来自大陆,台湾,硅谷,百度,阿里巴巴变等一线大牛;累计注册用户数十万,咨询转化率高达50%以上;其12年—13年课单价约3000元,为让更多学员可以轻松完成自学,14年课单价大幅下调;高端学员已经超过3000人,遍布国内外,其中8成以上是IT在职工程师;直接向企业输送人才超过100人,间接输送达500多人,平均月薪统计为8K以上。
网站文化
“不以盈利为第一目的,而是将课程和教育做到极致”。麦子学院一直以高端IT技术型人才培养及服务为核心,探索及倡导技术交流创新模式,提供无视的职业向导而非仅仅技能培养,致力于做IT人一生的网站。
篇二:麦子学院Android开发教程显示在线图片
Android显示在线图片,通过如下方式实现: 1. import java.io.ByteArrayOutputStream;
2. import java.io.InputStream;
3. import java.net.HttpURLConnection;
4. import java.net.URL;
5.
6. import android.app.Activity;
7. import android.graphics.Bitmap;
8. import android.graphics.BitmapFactory;
9. import android.os.Bundle;
10. import android.view.View;
11. import android.widget.Button;
12. import android.widget.EditText;
13. import android.widget.ImageView;
14. import android.widget.Toast;
15.
16. public class AndroidTest extends Activity {
17. private static final String URL =
"http://avatar.csdn.net/3/2/4/2_ameyume.jpg";
18. private EditText pathText;
19. private ImageView imageView;
20.
21. /** Called when the activity is first created. */
22. @Override
23. public void onCreate(Bundle savedInstanceState) {
24. super.onCreate(savedInstanceState);
25. setContentView(R.layout.main);
26.
27. pathText = (EditText) this.findViewById(R.id.path);
28. pathText.setText(URL);
29. imageView = (ImageView) this.findViewById(R.id.imageView);
30. Button button = (Button) this.findViewById(R.id.button);
31. button.setOnClickListener(new View.OnClickListener() {
32.
33. public void onClick(View v) {
34. String path = pathText.getText().toString();
35. try {
36. byte[] data = getImage(path);
(来自:www.sMHaiDa.com 海 达范文网:麦子学院)37. if(data!=null){
38. Bitmap bitmap = BitmapFactory.decodeByteArray(data, 0,
data.length);// bitmap
39. imageView.setImageBitmap(bitmap);// display image
40. }else{
41. Toast.makeText(AndroidTest.this, "Image error!", 1).show();
42. }
43. } catch (Exception e) {
44. Toast.makeText(AndroidTest.this,"Newwork error!", 1).show();
45. e.printStackTrace();
46. }
47. }
48. });
49.
50. }
51.
52. /**
53. * Get image from newwork
54. * @param path The path of image
55. * @return
56. * @throws Exception
57. */
58. public static byte[] getImage(String path) throws Exception{
59. URL url = new URL(path);
60. HttpURLConnection conn = (HttpURLConnection)
url.openConnection();
61. conn.setConnectTimeout(5 * 1000);
62. conn.setRequestMethod("GET");
63. InputStream inStream = conn.getInputStream();
64. if(conn.getResponseCode()==200){
65. return readStream(inStream);
66. }
67. return null;
68. }
69.
70. /**
71. * Get data from stream
72. * @param inStream
73. * @return
74. * @throws Exception
75. */
76. public static byte[] readStream(InputStream inStream) throws Exception{
77. ByteArrayOutputStream outStream = new ByteArrayOutputStream();
78. byte[] buffer = new byte[1024];
79. int len = 0;
80. while( (len=inStream.read(buffer)) != -1){
81. outStream.write(buffer, 0, len);
82. }
83. outStream.close();
84. inStream.close();
85. return outStream.toByteArray();
86. }
87.
88. }
复制代码
manifest.xml中增加网络权限
1.
如需了解更多相关知识,请至麦子学院官网查询(/)。
篇三:麦子学院Android开发教程颜色大全
本文详细列出了android开发中经常用到的颜色代码,有需要的网友可以收藏,以备不时之需。
如需了解更多相关知识,请至麦子学院官网查询(/)。
篇四:【麦子学院】产品经理必须具备的能力归纳
【麦子学院】产品经理必须具备的能力归纳
随着产品经理这个行业越来越吃香,应届生想做产品经理了,技术、市场、编辑等人员也都想转行做产品经理了,在网上到处可见大家在问怎么入行产品经理?零基础入门产品经理需要学些什么?等等。
其实产品经理这个岗位确实是一个包容性很强的岗位,只要理清楚产品经理的能力模型,对照所需能力去弥补和提高即可。下面我们就从一个产品/功能完整生命周期的维度来分析、建立产品经理能力模型。
确定需求
不管是产品还是功能,在研发前我们都需要明确其所有的需求和场景,抓住客户核心需求是产品经理最主要的职责之一。那么问题来了,产品经理必须具备哪些能力,才能准确发现客户核心需求?
1. 掌握基本消费者心理学、社会学知识——能够从跟深层次的原因去了解用户为什么要用你的产品和功能?你策划的产品或者功能满足了什么动机呢?尝试去分析分析每一个产品或功能背后,用户得到了什么?比如,点赞满足了人的什么心理?为什么我们需要自拍?……
2. 场景代入感——清楚所有用户怎么使用你的产品。产品经理首先自己是用户,但还不够,还要能代表所有不同的用户,能够“一秒变傻瓜用户”,根据不同的场景切换来模拟用户行为,抓住用户真正的需求,在具体场景下,会发现用户其实不是想要一个相机,是想要拍照而已,手机拍照也可以的。
3. 市场分析能力。多时候,你都不是第一个想到这个idea的人,有了前面的能力,你基本能够判断用户需要什么,但是还需要一个理由,用户为什么用你的产品,而不是你的竞品。
4. 数据能力,包括建模、分析、总结等等。清楚了用户需求,以及用户为什么要用你的产品后,还学要用数据证明给你的boss看,让你boss支持你研发这款产品。可以用市面上已有的产品进行分析,帮他们设计一个数据统计平台?
5. 需求文档撰写。这就是将你前面的分析及你自己的想法,变成别人能懂,能做的一种表达。在需求文档的编写中,需要搞清楚的一点就是读者是谁。
在产品经理学习过程中,我们可以尝试去写写已有的产品,即使你没法把一个庞大的产品拆分开,也可以把你的想法写下来,整理成需求。在写的过程中,你或许还会发现很多需要使用的工具你的不会,那么恭喜你,你可以顺便把这些潜在的产品经理“能力需求”也练练。
产品落地
写好了一个牛逼的产品需求,剩下只差一个研发了?NO~~事情可不是那么简单
1. 把需求说清楚。你要说服每一个人,这也是检验前期工作是否做得足的一个步骤。正常来说,会有很多人挑战你,如果其他人问你的各种case,你都能坦然的说出,这个我早就知道,为什么不选这种方案,是因为blalala~~~,你得让大家知道,你花了精力,他们的劳动成果不会是为你的大意买单。
2. 确定需求的优先级。想清楚用户核心需求是什么很重要,你的产品不要什么也很重要。
3. 了解基本的互联网产品分工。设计师(不是美工。。)、前端开发、后台开发,可能还要区分平台(HTML5、web、Android、IOS),每个团队角色都干些什么,上下游的关系是什么样子的。虽然产品经理不是项目经理,常识性的错误还是会很伤害威望值的。不管搜也好,问也好,搞清楚这些吧,特别是跨专业过来的童鞋。当然,以后正式进入产品经理这个岗位可能会根据你所处公司的不同情况,分工上有微调,但这对我们的学习并没什么影响。
4. 沟通能力。针对团队每个角色的沟通技巧可能需要实践,但是了解他们的工作内容或者基本的工作原理还是有必要的,不要迷信一些段子“这个其实很简单”“技术方案我不关系”,这一点说起来容易,可能有些人的性格还就是干不好呢。不管怎么说,就是让整个团队能够顺利的做成一件事情,在学校可以找机会试试,不管是组织一次春游还是组织一次班会。
5. 人格魅力,这直接决定你要被挑战多少次。如果是个妹子,可能卖个萌开发就给你做了,如果是个哥们,菊花记得常洗。
产品迭代
万幸,产品终于上线了,产品经理还需要做什么呢?漫无止境的产品迭代。
迭代需求应该出来了,不然团队该停工了,迭代需求会有两部分:上线之前没做完的功能,上线后的优化需求。
产品发布之前,就应该对产品有预期,根据用户反馈、数据收集等等辅助你来判断,这个功能是不是达到了你的设想(你模拟的用户行为),没有的话应该怎么去优化,及时响应。
产品的后期规划
根据产品不同的阶段,要做不同的事情,服务好产品的新用户和老用户。
统计分析能力
上线之前,需要统计埋点;上线之后会有大量的数据需要分析,验证之前对需求的理解。
通用技能
学习能力,解决问题的能力。客户需求日新月异,产品研发问题也层出不穷,如果不具备强悍的学习能力和解决问题的能力,那么如何开发出客户需要的产品,如何保证产品能如期上线。
如果你想成为产品经理的话,就不要在犹豫了,立马开始学习计划吧,做永远比空想重要。身处互联网时代,以上产品经理所需的能力我想你应该清楚哪里可以找到学习资料,如果不清楚的话,就上麦子学院观看《零基础入门产品经理》视频教程吧。
篇五:麦子学院Android开发教程Camera介绍
第一部分 Camera概述
Android 的Camera包含取景器(viewfinder)和拍摄照片的功能 。目前Android发布版的Camera程序虽然功能比较简单,但是其程序的架构分成客户端和服务器两个部分,它们建立在Android的进程间通讯 Binder的结构上。
以开源 的Android为例,Camera的代码主要在以下的目录中:
Camera的JAVA程序的路径:
packages/apps/Camera/src/com/android/camera/
在其中Camera.java 是主要实现的文件
Camera的JAVA本地调用部分(JNI):
frameworks/base/core/jni/android_hardware_Camera.cpp
这部分内容编译成为目标是libandroid_runtime.so 。
主要的头文件在以下的目录中:
frameworks/base/include/ui/
Camera底层库在以下的目录中:
frameworks/base/libs/ui/
这部分的内容被编译成库libui.so 。
Camera服务部分:
frameworks/base/camera/libcameraservice/
这部分内容被编译成库libcameraservice.so 。
为了实现一个具体功能的Camera,在最底层还需要一个硬件相关的Camer库(例如通过调用video for linux驱动程序和Jpeg编码程序实现)。这个库将被Camera的服务库libcameraservice.so 调用。
第二部分 Camera的接口与架构
2.1 Camera的整体框架图
Camera的各个库之间的结构可以用下图的表示:
在 Camera系统的各个库中,libui.so位于核心的位置,它对上层的提供的接口主要是Camera类,类 libandroid_runtime.so通过调用Camera类提供对JAVA的接口,并且实现了android.hardware.camera 类。 libcameraservice.so是Camera的服务器程序,它通过继承libui.so的类实现服务器的功能,并且与libui.so中的另外 一部分内容则通过进程间通讯(即Binder机制)的方式进行通讯。
libandroid_runtime.so和libui.so两个库是公用的,其中除了Camera还有其他方面的功能。
Camera部分的头文件在frameworks/base/include/ui/ 目录中,这个目录是和
libmedia.so库源文件的目录frameworks/base/libs/ui/ 相对应的。
Camera主要的头文件有以下几个:
■ICameraClient.h
■Camera.h
■ICamera.h
■ICameraService.h
■CameraHardwareInterface.h
在这些头文件Camera.h提供了对上层的接口,而其他的几个头文件都是提供一些接口类(即包含了纯虚函数的类),这些接口类必须被实现类继承才能够使用。
整个Camera在运行的时候,可以大致上分成Client和Server两个部分,它们分别在两个进程中运行,它们之间使用Binder机制实现进程间 通讯。这样在客户端调用接口,功能则在服务器中实现,但是在客户端中调用就好像直接调用服务器中的功能,进程间通讯的部分对上层程序不可见。
从框架结构上来看,ICameraService.h、ICameraClient.h和ICamera.h三个类定义了MeidaPlayer的接口和 架构,ICameraService.cpp和Camera.cpp两个文件用于Camera架构的实现,Camera的具体功能在下层调用硬件相关的接 口来实现。
从Camera的整体结构上,类Camera是整个系统核心,ICamera类提供了Camera主要功能的接口,在客户端方面调 用,CameraService是Camera服务,它通过调用实际的Camera硬件接口来实现功能。事实上,图中红色虚线框的部分都是Camera程 序的框架部分,它主要利用了Android的系统的Binder机制来完成通讯。蓝色的部分通过调用Camera硬件相关的接口完成具体的Camera服 务功能,其它的部分是为上层的JAVA程序提供JNI接口。在整体结构上,左边可以视为一个客户端,右边是一个可以视为服务器,二者通过Android的 Bimder来实现进程间的通讯。
2.2 头文件ICameraClient.h
2.2 头文件ICameraClient.h
ICameraClient.h用于描述一个Camera客户端的接口,定义如下所示:
1. class ICameraClient: public IInterface
2. {
3. public:
4. DECLARE_META_INTERFACE(CameraClient);
5. virtual void shutterCallback() = 0;
6. virtual void rawCallback(const sp
7. virtual void jpegCallback(const sp
8. virtual void frameCallback(const sp
9. virtual void errorCallback(status_t error) = 0;
10. virtual void autoFocusCallback(bool focused) = 0;
11. };
12. class BnCameraClient: public BnInterface
13. {
14. public:
15. virtual status_t onTransact( uint32_t code,
16. const Parcel& data,
17. Parcel* reply,
18. uint32_t flags = 0);
19. };
复制代码
在定义中,ICameraClient 类继承IInterface,并定义了一个Camera客户端的接口,BnCameraClient 继承了BnInterface
BnInterface
2.3 头文件Camera.h
2.3 头文件Camera.h
Camera.h是Camera对外的接口头文件,它被实现Camera JNI的文件
android_hardware_Camera.cpp所调用。Camera.h最主要是定义了一个Camera类:
1. class Camera : public BnCameraClient, public IBinder:eathRecipient
2. {
3. public:
4. staticsp
5. ~Camera();
6. voiddisconnect();
7. status_tgetStatus() { return mStatus; }
8. status_tsetPreviewDisplay(const sp
9. status_tstartPreview();
10. voidstopPreview();
11. status_tautoFocus();
12. status_ttakePicture();
13. status_tsetParameters(const String8& params);
14. String8 getParameters() const;
15. voidsetShutterCallback(shutter_callback cb, void *cookie);
16. voidsetRawCallback(frame_callback cb, void *cookie);
17. voidsetJpegCallback(frame_callback cb, void *cookie);
18. voidsetFrameCallback(frame_callback cb, void *cookie);
19. voidsetErrorCallback(error_callback cb, void *cookie);
20. voidsetAutoFocusCallback(autofocus_callback cb, void *cookie);
21. // ICameraClient interface
22. virtual voidshutterCallback();
23. virtual voidrawCallback(const sp
24. virtual voidjpegCallback(const sp
25. virtual voidframeCallback(const sp
26. virtual voiderrorCallback(status_t error);
27. virtual voidautoFocusCallback(bool focused);
28. //……
29. }
复制代码
从接口中可以看出Camera类刚好实现了一个Camera的基本操作,例如播放
(startPreview)、停止(stopPreview)、暂停 (takePicture)等。在Camera类中connect()是一个静态函数,它用于得到一个Camera的实例。在这个类中,具有设置回调函数 的几个函数:setShutterCallback、setRawCallback和setJpegCallback等,这几个函数是为了提供给上层使 用,上层利用这几个设置回调函数,这些回调函数在相应的回调函数中调用,例如使用setShutterCallback设置的回调函数指针被 shutterCallback所调用。
在定义中,ICameraClient 类双继承了IInterface和IBinder::DeathRecipient,并定义了一个Camera客户端的接 口,BnCameraClient 继承了
BnInterface
继承了DeathNotifier类之后,这样当这个类作为IBinder使用的时候,当这个Binder即将Died的时候被调用其中的binderDied函数。继承这个类基本上实现了一个回调函数的功能。
2.4 头文件ICamera.h
2.4 头文件ICamera.h
ICamera.h描述的内容是一个实现Camera功能的接口,其定义如下所示:
1. class ICamera: public IInterface
2. {
3. public:
4. DECLARE_META_INTERFACE(Camera);
5. virtual void disconnect() = 0;
6. virtual status_tsetPreviewDisplay(const sp
7. virtual void setHasFrameCallback(bool installed) = 0;
8. virtual status_tstartPreview() = 0;
9. virtual void stopPreview() = 0;
10. virtual status_tautoFocus() = 0;
11. virtual status_ttakePicture() = 0;
12. virtual status_tsetParameters(const String8& params) = 0;
13. virtual String8 getParameters() const = 0;
14. };
15. class BnCamera: public BnInterface
16. {
17. public:
18. virtual status_tonTransact( uint32_t code,
19. const Parcel& data,
20. Parcel* reply,
21. uint32_t flags = 0);
22. };
复制代码
在camera类中,主要定义Camera的功能接口,这个类必须被继承才能够使用。值得注意的是,这些接口和Camera类的接口有些类似,但是它们并没有直接的关系。事实上,在Camera类的各种实现中,一般都会通过调用ICamera类的实现类来完成。
2.5 头文件ICameraService .h
2.5 头文件ICameraService .h
ICameraService.h用于描述一个Camera的服务,定义方式如下所示:
1. class ICameraService : public IInterface
2. {
3. public:
4. DECLARE_META_INTERFACE(CameraService);
5. virtual sp
= 0;
6. };
7. class BnCameraService: public BnInterface
8. {
9. public:
10. virtual status_t onTransact( uint32_t code,
11. const Parcel& data,
12. Parcel* reply,
13. uint32_t flags = 0);
14. };
复制代码
字数作文