先说说我自己:01 年考入北京邮电大学工业设计专业,一个全新的专业,很多同学都是被调剂过来的,没有艺术基础,大家都是从小白被动开始学设计,既没兴趣,也没基础。那时候“设计”和“用户体验”的概念远没有现在这么成熟,但是很多同学经过这么多年的历练,在行业内都成了顶呱呱的设计师或者领导者。自己也开过十来年的设计公司,有设计背景和转行学设计的都面试过很多,有些“自学成才”的小白,每天埋头临摹各种花哨的图标,精通 C4D,但是做出的界面十分粗糙,显然努力错了方向;也接触过很多培训机构出来的学员,简历和作品集千篇一律,问到对互联网产品的了解以及作品中的思考却又支支吾吾。当然也有不少通过自己努力成功入行的。所以建议题主在入行之前一定要认真了解行业现状、互联网公司一般的用人需求,然后再有针对性地学习和准备。小白的学习方式一般学 UI 设计分为自学和上培训班(很多大学生毕业后也会选择培训班系统学习)两种:自学的优势是省钱,但是会缺乏系统性(现在是知识变现的年代,真正的干货是不会免费的),也会浪费大量的时间;上培训班可以系统学习,但是问题是不靠谱的很多(包括机构和个人),有很多就是有几年的工作经验就急于跑出来变现的。例如在某某课堂上看到老师讲的东西,连概念都搞不清。至于有些机构这些年打着招聘的旗号招学员,打着包就业的幌子,在学习中教学生简历造假的丑闻就太多了。
设计师系统学习的流程和方法:
一、认清概念,UI、UE、UX、GUI、ID 有什么区别?我们常说的 UI 设计,即用户界面设计“User Interface Design”,大家常常混淆几个概念:UE、UX、UI 、GUI、ID,我们一起看看他们之间的关系和区别:很多传统的企业把 UI 设计等同于美工,实际上有很大的差别,美工主要是负责界面的美化,而 UI 设计师不仅要负责界面的美观,还要站在产品的角度,参与流程的优化、把设计进行工程化的输出。二、学会评判设计,好设计的四个标准1.好的设计首先是实用的优秀的界面视觉设计,一定是便于用户使用的。利于使用,是设计的根本需求。设计师未必是好的艺术家,好的艺术家也未必是好设计师我们遇到不少初学UI设计的同学在问:“学设计要从学手绘开始吗?”有这样的疑问,其实是没有区分开设计和艺术的不同。设计和艺术是不一样的:设计本身是服务于产品,是在一定规范下完成信息的传达,而艺术品纯粹重在表达。UI设计师是用自己的设计服务于产品,在视觉规范下完成信息的视觉传达和表现,最终满足用户的需求。以用户为中心的设计视觉设计本身也同样以用户为中心,围绕着用户的需求以及目标用户的心理概念模型展开。比如:小时候过年,你领到压岁钱以后,是不是基本都“上交”给了爸妈?你爸妈说要给你存起来,这都过去二三十年了,你知道你的压岁钱去哪儿了吗?如果当时就有支付宝,你可以把压岁钱存进余额宝涨利息,是不是就有机会自行支配资产了?现在的孩子就比你幸福多了,支付宝最近出了一个【小钱袋】功能,主要是帮助小朋友存储和管理自己的资产,比如压岁钱和零花钱。这个功能的推出,就符合小朋友们(据说00后可有钱了呢)的需求,也便于父母单独管理孩子的自有资产,减少亲子之间因为压岁钱产生的小矛盾。每一个视觉元素均有意义在一页用户界面中,每一个视觉元素都有它要实现的目标,而不是单纯出现的装饰性元素。比如:知群需要设计一张封面图。先说一下设计的业务背景和需求:设计师需要为【知群产品设计训练营】设计一张封面图,需求是视觉上符合审美,重点是突出训练营,让用户看到封面图,即能理解训练营的价值和作用,更愿意点击。大家对比一下优化前后的方案,哪里发生了变化?设计方案V2.0相对V1.0版本,增加了一个“小旗子”的视觉元素,这个“小旗子”可不是随便加上的,因为这个“小旗子”的存在,在第二张图里,我们的阅读顺序就非常连贯。一个UI设计初学者,以产品设计训练营为起点开始入门,循序渐进地掌握了软件能力、造型能力、色彩能力、界面排版能力之后,再经过名企项目实战积累经验,最终产出作品集。经历过这样完整的过程后,才有足够的专业实力和信心,证明自己掌握了UI设计的核心竞争力。这个“小旗子”视觉元素的增加,其实是从视觉上突出了训练营对于UI设计初学者可以起到入门的作用,也让用户理解到从入门到掌握核心竞争力需要经历的完整过程,用设计引导用户的视觉阅读顺序,从而增加对封面图的点击。2、容易让用户快速学会使用在尼尔森可用性标准中,有一个易学性原则。遵循这个原则,在保持美观性基础上,更重要的是能够准确、快速、有效地传达信息,让用户更容易学会使用。- 微信“摇一摇”的图标,就能够让用户快速学会如何使用这个功能。- 搜索界面、语音图标,能够引导用户快速使用语音功能。- 微信会话界面输入控件旁的笑脸,能够让用户快速学会发表情。就算是爷爷奶奶看见这个笑脸,也更容易理解这里可以发表情给你吧。3、产品中的设计元素都是统一的设计师如何能让用户快速、有效、容易地使用产品?那就需要设计师保持在产品中的设计元素的统一性。建立统一的标准这里提到的统一指的是在同一套标准下,设计上面的统一,即同样的功能保持一致。设计师需要建立和维护视觉设计规范,来保持设计的统一性。大厂名企的设计团队都有自己的设计规范,比如:Ant Design。蚂蚁金服的设计系统我平时不管是带新人还是教别人,都会通过大厂的设计规范,让大家学会如何建立和维护视觉设计规范,便于保持设计元素的统一性。iOS11和 Material Design 设计规范大纲相同功能保持一致针对相同的功能,在视觉呈现上保持一致,达到统一的效果。统一是降低学习成本的关键统一的界面设计,可以降低用户的学习成本,能够提高产品使用效率。4、好的设计必须是美学的体现好的设计在视觉上必须是美的体现,这里有一个关键点:对于目标用户来说,设计要好看。这里的的关键点就是“目标用户”认为的好看。设计并不是设计师主观上的好看,而是需要深入了解和考虑目标用户的审美喜好,做出他们觉得好看的设计。比如:你作为设计师,要为3-6岁的儿童设计一个界面,那么你就需要深入了解这个年龄段的孩子认为什么样的美的。或许作为成年人的我们认为“性冷淡”风更显高级,但是对于孩子来说,“红配绿”或许是他们最爱的。三、UI 设计师必须掌握的 5 项能力UI设计入门需要掌握 5 项能力:1. 图形造型能力比如你要画一个星星图标,不仅需要画出一个“星星”的形态,还要符合造型审美。2. 图形表现能力你画的这个星星不仅有“星星”的造型,还要有质感,比如毛茸茸的质感、大理石的质感。3. 色彩表现能力你怎么为“星星”进行色彩配色,比如说用渐变邻近色,还是选择对比色配接起来配色。4. 终端规范能力你把这个“星星”做好之后,放在界面里面,需要注意哪些,比如界面最小可点击范围是48px * 48px,那么就要注意这个“星星”图标尺寸不要小于这个尺寸。5. 终端界面能力当图标这种小元素做完之后,放在整个界面里,要注意优先级排序,以及界面与界面之间的逻辑关系。这 5 个能力之间什么关系呢?这些能力又应该从哪里入手掌握呢?我们分别来看一下:终端界面能力和终端规范能力属于设计专项能力,主要表现为做界面设计。图形表现能力、图形造型能力、色彩能力属于设计底层能力,是做各种设计的基础,不仅可以做界面设计,还能做插画设计、运营设计、品牌设计。界面设计比如常见的 APP 或网页的界面设计。插画设计比如在做APP开屏广告时,就可以用丰富造型、大胆配色的插画风格,吸人眼球,提升广告页面的观看时间。运营设计比如淘宝、京东等电商首页Banner,或者得到APP的课程详情页。品牌设计设计品牌的LOGO、VI视觉等四、UI 设计师能力模型如何掌握入门UI设计师,这 5 项能力通过短时间学习(比如4个月),需要掌握到什么程度?做产品、设计需要考虑优先级,其实掌握技能也需要分清优先级,先抓重点,各个击破。在入门学习UI设计的时候,要分清熟练掌握和基本掌握的技能,在有限的时间里重点突破:1. 熟练掌握:终端界面能力和终端规范能力这 2 项能力可以通过短时间学习,快速掌握和上手。这两项能力的掌握也有大量的参考资料和前人经验值得学习参考。2. 基本掌握:图形造型能力、图形表现能力、色彩能力因为这 3 项能力很难在短时间内速成,而是需要长时间的刻意练习和积累。如果你想自学UI设计,也需要给自己设计适合的难度梯度学习路径,帮助自己在有效时间内入门UI设计。五、UI 设计学习的5个阶段学习任何技能,一口吃不了胖子,都需要循序渐进,先打基础再提升。UI设计的学习也是这样。我们以图标造型能力为例,看一下怎样由浅入深地掌握 5 项能力?如果你想自学UI,也适合你根据这个学习曲线,规划自己的学习阶段图标造型能力学习流程所以,掌握一个技能或知识点,需要经过以下这 5 个阶段:1、了解概念扁平和拟物是两个大的图标分类。当你了解了基础的图标概念,再通过临摹学习加深对基础概念的理解。2、临摹学习知群教研组老师们之所以选择了通过Android图标的讲解,来让同学们临摹练习,是因为Android图标的设计过程是开放的,有丰富的学习资料,便于同学们参考借鉴。3、举一反三在同学们掌握了Android图标的临摹之后,老师会让他们通过练习扁平图标,来达到举一反三的效果。因为扁平图标相对复杂,因为涉及到图形和组合、点线面的组合,这对同学们来说,难度有升级,但是同学们又能在挑战中获得成就感。4、应用实践知群的老师会教给同学们图形组合和创意的方法,帮助同学们最终能做出属于自己的一套图标。这样完整的图标,也可以放在作品集中,成为面试中凸显自己设计细节感的亮点。5、最终掌握该能力在经历了了解概念、临摹学习、举一反三、应用实践的完整流程后,才算是真的掌握了图标造型能力。怎么算是真正掌握一项能力呢?就是你不仅会设计一套适合品牌调性的图标,还能举一反三,在产品接触用户全流程的各个触点,都用带有品牌意义的图形造型,将产品和品牌的价值传递给用户,做到真正的应用。六、额外建议:平时要多下功夫UI 设计水平的提升要多看、多用、多想、多做。多看优秀同行的作品,了解时下流行的风格,提升自己审美水平;多用设计优良的小众产品,体验产品流程、设计、动效等内容,体会设计师背后的思考逻辑;多想这些产品为什么这么做,还有哪些优化空间;多动手临摹,避免眼高手低。下面推荐一些平台:1.最美应用(公众号和 App )最美应用是老牌的应用推荐平台,大家可以关注“最美应用”推荐的产品和专题,这些优秀的产品往往在功能、设计、交互方面有着独到的地方,在这背后设计师和产品经理有着什么样的思考?为什么做成这样?能否借鉴?这些问题都值得大家深入思考。2.设计师常用网站,多去膜拜大神,多动手临摹他们的作品包括 Dribbble、Behance、Pinterest、知群设计圈等等,这些优秀设计师作品展示平台间接向我们传递着设计潮流、设计趋势、设计方法,尤其是知群设计圈,翻译了很多国外的专业文章,值得一读。Web安全相关概念
熟悉基本概念(SQL注入、上传、XSS、CSRF、一句话木马等)。1.通过关键字(SQL注入、上传、XSS、CSRF、一句话木马等)进行Google/SecWiki;
2.阅读《精通脚本黑客》,虽然很旧也有错误,但是入门还是可以的;看一些渗透笔记/视频,了解渗透实战的整个过程,可以Google(渗透笔记、渗透过程、入侵过程等);
3周
熟悉渗透相关工具
熟悉AWVS、sqlmap、Burp、nessus、chopper、nmap、Appscan等相关工具的使用。
1.了解该类工具的用途和使用场景,先用软件名字Google/SecWiki;
2.下载无后们版的这些软件进行安装;
3.学习并进行使用,具体教材可以在SecWiki上搜索,例如:Brup的教程、sqlmap;
4.待常用的这几个软件都学会了可以安装音速启动做一个渗透工具箱;
5周
渗透实战操作
掌握渗透的整个阶段并能够独立渗透小型站点。
1.网上找渗透视频看并思考其中的思路和原理,关键字(渗透、SQL注入视频、文件上传入侵、数据库备份、dedecms漏洞利用等等);
2.自己找站点/搭建测试环境进行测试,记住请隐藏好你自己;
思考渗透主要分为几个阶段,每个阶段需要做那些工作,例如这个:PTES渗透测试执行标准;
4.研究SQL注入的种类、注入原理、手动注入技巧;
5.研究文件上传的原理,如何进行截断、双重后缀欺骗(IIS、PHP)、解析漏洞利用(IIS、Nignix、Apache)等,参照:上传攻击框架;
6.研究XSS形成的原理和种类,具体学习方法可以Google/SecWiki,可以参考:XSS;
7.研究Windows/Linux提权的方法和具体使用,可以参考:提权;
8.可以参考: 开源渗透测试脆弱系统;
1周
关注安全圈动态
关注安全圈的最新漏洞、安全事件与技术文章。通
1.过SecWiki浏览每日的安全技术文章/事件;
通过Weibo/twitter关注安全圈的从业人员(遇到大牛的关注或者好友果断关注),天天抽时间刷一下;
2.通过feedly/鲜果订阅国内外安全技术博客(不要仅限于国内,平时多注意积累),没有订阅源的可以看一下SecWiki的聚合栏目;
4.养成习惯,每天主动提交安全技术文章链接到SecWiki进行积淀;
5.多关注下最新漏洞列表,推荐几个:exploit-db、CVE中文库、Wooyun等,遇到公开的漏洞都去实践下。
6.关注国内国际上的安全会议的议题或者录像,推荐SecWiki-Conference。
3周
熟悉Windows/Kali Linux
学习Windows/Kali Linux基本命令、常用工具;
1.熟悉Windows下的常用的cmd命令,例如:ipconfig,nslookup,tracert,net,tasklist,taskkill等;
2.熟悉Linux下的常用命令,例如:ifconfig,ls,cp,mv,vi,wget,service,sudo等;
3.熟悉Kali Linux系统下的常用工具,可以参考SecWiki,《Web Penetration Testing with Kali Linux》、《Hacking with Kali》等;
4.熟悉metasploit工具,可以参考SecWiki、《Metasploit渗透测试指南》。
3周
服务器安全配置
学习服务器环境配置,并能通过思考发现配置存在的安全问题。
1.Windows2003/2008环境下的IIS配置,特别注意配置安全和运行权限,可以参考:SecWiki-配置;
2.Linux环境下的LAMP的安全配置,主要考虑运行权限、跨目录、文件夹权限等,可以参考:SecWiki-配置;
3.远程系统加固,限制用户名和口令登陆,通过iptables限制端口;
4.配置软件Waf加强系统安全,在服务器配置mod_security等系统,参见SecWiki-ModSecurity;
5.通过Nessus软件对配置环境进行安全检测,发现未知安全威胁。
4周
脚本编程学习
选择脚本语言Perl/Python/PHP/Go/Java中的一种,对常用库进行编程学习。
1.搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP,IDE强烈推荐Sublime,一些Sublime的技巧:SecWiki-Sublime;
2.Python编程学习,学习内容包含:语法、正则、文件、网络、多线程等常用库,推荐《Python核心编程》,不要看完;
3.用Python编写漏洞的exp,然后写一个简单的网络爬虫,可参见SecWiki-爬虫、视频;
4.PHP基本语法学习并书写一个简单的博客系统,参见《PHP与MySQL程序设计(第4版)》、视频;
5.熟悉MVC架构,并试着学习一个PHP框架或者Python框架(可选);
6.了解Bootstrap的布局或者CSS,可以参考:SecWiki-Bootstrap;
3周
源码审计与漏洞分析
能独立分析脚本源码程序并发现安全问题。
1.熟悉源码审计的动态和静态方法,并知道如何去分析程序,参见SecWiki-审计;
2从Wooyun上寻找开源程序的漏洞进行分析并试着自己分析;
3.了解Web漏洞的形成原因,然后通过关键字进行查找分析,参见SecWiki-代码审计、高级PHP应用程序漏洞审核技术;
4.研究Web漏洞形成原理和如何从源码层面避免该类漏洞,并整理成checklist。
5周
安全体系设计与开发
能建立自己的安全体系,并能提出一些安全建议或者系统架构。
1.开发一些实用的安全小工具并开源,体现个人实力;
2.建立自己的安全体系,对公司安全有自己的一些认识和见解;
3.提出或者加入大型安全系统的架构或者开发;
4.看自己发展咯~
首先,学习网站开发(Web开发)是个不错的选择,目前Web开发依然是主流开发方向之一,而且未来Web开发将进一步得到发展。从互联网发展历史来看,Web开发打开了互联网应用的大门,随着Web2.0的应用,互联网也逐渐进入了大数据时代。
Web开发的发展经历了多个重要的阶段,比如早期的Web开发被称为“Web Site”,这一时期的Web开发主要以静态资源的整合应用为主,主要采用的技术就是HTML技术,另外还需要掌握一定的服务器部署知识。
随着对Web开发要求的提高,动态网站技术得到了应用,这一时期的Web开发被称为“Web Application”。动态网站采用了CGI技术,可以根据用户的需要进行一系列动态操作,包括数据存取服务等等,可以说动态网站技术的推出是Web开发领域的里程碑式事件,真正让Web应用走向了成熟。这一时期大名鼎鼎的Java也得到了快速的发展,推出了功能稳定的Java Web标准,其中Servlet与CGI技术相比有明显的优势,Java语言也由此开启了快速发展的模式。
随着互联网平台的规模越来越大,Web开发的技术体系也随之产生着变化,一系列提升Web性能的技术被陆续采用,包括Spring系列技术(SpringMVC、SpringBoot、SpringCloud)等等。另外,目前Web开发的前后端分别采用不同的服务器进行部署,这进一步提升了响应速度。
当前,Web开发技术已经形成了一个较为系统的体系结构,Web生态也逐渐成熟。对于Web开发人员来说,除了要掌握后端开发技术之外,还应该系统的学习一下前端开发知识,包括JavaScript等内容。目前用于Web开发的语言有Java、PHP、Python、C#等,这些语言都有广泛的应用。对于计算机基础比较薄弱的人来说,推荐从Python或者PHP开始学起。
我从事互联网行业多年,目前也在带计算机专业的研究生,主要的研究方向集中在大数据和人工智能领域,我会陆续在头条写一些关于互联网技术方面的文章,感兴趣的朋友可以关注我,相信一定会有所收获。
如果有互联网方面的问题,也可以咨询我,谢谢!
编程大牛这个说法太模糊,没有一个标准的定义,一些人眼中的大牛在另一些人眼中可能就很普通,但大致含义指的是在从事编程工作中比较优势的那些人。这样问题就变成了如何成为优秀的编程人员?
在这个世界上总有那么一些天资卓越的人,他们总能在一些方面(比如编程)表现出异于常人的优秀品质,但这种人的数量是非常少的。我个人认为绝大多数人潜在的能力相差不大的,一个人之所以在某些方面表现的不尽如人意,不是因为他在这方面比较差,而是他沒能充分发挥出这方面的潜在能力,充分发挥人的潜在能力的方式是通过训练来实现的,比如运动员通过训练来提高成绩,编程能力的改善与提高也是如此,有种说法是这样说的:要想成为某领域专家要有一万小时的该领域经验,还有种说法:优秀的编程人员至少要有十万行代码的编程训练。这说明优秀的编程人员是可以通过训练达成的。
一个优秀的编程人员通常具有这样一些特点:(1)他们非常热爱和喜欢编程,有着成为优秀编程人员的强烈愿望和目标,这一点非常重要,因为人的行为的目的性会对行为结果产生巨大的影响,一个只希望考试过60分就OK的人几乎没有多大可能考出高分,目标影响了他的行为结果;(2)优秀的编程人员通常精通和熟悉若干编程语言,并且能够运用自如,而且还不会混淆起来,就像一个精通若干外语的人能够自如地使用各种语言一样;(3)优秀的编程人员普遍有着良好的算法训练,算法对于编程来说是至关重要的,没有很好的算法训练是很难成为优秀的编程人员的;(4)掌握必要的计算机科学知识,比如操作系统、数据库、计算机网络、编译原理等计算机科学的核心基础知识。
总之,对大多数人而言,要想成为优秀的编程人员,基本途径就是勤学苦练,即使对于天赋的人,也需要通过必要的训练才能发挥出其异于常人的能力,普通人更是如此。
1、PHP是什么?甚至可以说编程语言是什么?
编程语言就是一种以代码的形式。用计算机编程解决实际问题的语言,不要小瞧这句空话,这是我这几年才真正理解的
2、你学习PHP都学习了什么?
是不是自己学习了一堆函数库,比如说,数据库、文件处理、时间处理等,但这些真的是你该学的吗
PHP应该学的就是PHP手册里面的基础语法框架,什么运算符、变量、类这些最基础的知识,而上面的所说的函数库,其实就是在PHP基础语法框架下,做出来的函数而已。
换句话说,难道同意的MySQL,PHP+MySQL实现的业务逻辑,Java+Mysql就不能了吗,都能实现,只是两种语言的基础语法不一样导致Mysql函数、类、包编写方式不一样而已。
So,你的PHP功底是学会了里面一堆的函数还是你本身就精通操作系统,mysql,redis这些生态组件,顺便用PHP实现了相关业务而已
3、编程人员要学什么?
1、操作系统相关知识要会
比如进程、线程,异步、并发这些都是与具体语言无关的,你知道这些了,你就会关注PHP 进程扩展章节里面说的函数库,但Go、Java不用想,他们肯定也有相关的包实现相关功能,所以你会这些后,PHP、Go、Java只是你脑海中业务实现的具体工具
workman,swoole 他们让一批PHP程序员打开了新的世界,但真的是新世界吗?
workman 利用了一些PHP原本已经提供的库如socket、Eo等进行了封装,Swoole 也是直接用系统层面提供的库进行了封装与加工,这些都是与PHP语言本身没有关联的事情
2、生态组件的学习
Mysql,redis ,mongodb ,ningx这些都是生态组件,与具体语言无关
3、语言编写技能要会
比如说设计模式,算法,数据结构与具体语言无关
4、什么是一种语言的前途
首先成本与收获要成比例的吧
若是只学习PHP做网站,就能赚钱,那大学四年的青春投入,大家有必要去浪费吗
PHP对一个认真学习的人来说,顶多2个星期入门,若是有合理的练手教程3个月就能成为大多数PHP高级开发,但对于那些不怎么认真学习的人来说,10年也是入门级,就会做做网站而已了
为啥自己叨逼叨这么多,也是自己一个反思与总结
来看一下RedMonk 刚发布的一月份编程语音最新排名
以上就是关于php入门到精通视频教程以及小白想学习ui设计的相关回答,有更多疑问可以加微。Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有