内容简介:SegmentFault 技术周刊 Vol.40 - 2018,来学习一门新的编程语言吧!
新的一年不知不觉已经到来了,总结过去的 2017,相信小伙们一定有很多收获和感悟,那对于刚刚到来的 2018,有什么期待和规划呢?不防就来学习一门新的语言吧,进一步提高编程技能,扩宽自己的知识领域。希望所有小伙伴的 2018,都是元气满满的一年。
Objective-C
本文面向已有其它语言(如Java,C,PHP,Javascript)编程经验的iOS开发初学者,初衷在于让我的同事一小时内了解如何开始开发iOS App,学习目标包括:
- 能使用Xcode IDE、模拟器
- 能修改、调试已有iOS App
- 能在已有应用内创建新模块
- 能创建新应用
- 能发布应用到App Store
这份学习资料是为 iOS 初学者所准备的,旨在帮助 iOS 初学者们快速找到适合自己的学习资料,节省他们搜索资料的时间,使他们更好的规划好自己的 iOS 学习路线,更快的入门,更准确的定位的目前所处的位置。
Scala
我初次接触Scala时,由于对Scala相关的工具不够熟悉,学习的效率低下。所以本文主要介绍Scala编程所必备的工具。一般而言,我们接触一门编程语言,都需要接触这门语言的编译器、REPL、构建工具、集成开发环境、文档(当然,因语言而异,编译器和REPL并不是每个语言都有的)。
这是一门很新的语言,2001年前后正式公布,算起来是比较年轻的编程语言了,更重要的是它是面向 java 程序员的函数式编程语言,它的代码运行在JVM之上。
Scala是一门有趣且实用的语言,它以JVM位目标环境,将面向对象和函数式编程有机地结合起来,带来独特的编程体验。本文主要整理《快学Scala》中的初级A1部分,适用于Scala的初级应用开发学习。
- 0.安装和运行scala
- 1.Scala基础
- 2.控制流与函数
- 3.数组
swift
让不懂编程的人爱上iPhone开发(2017秋iOS11+Swift4+Xcode9版)
适合看本系列教程的对象:
- 从未学过编程,或者对Swift语言一无所知,但要懂一些常用的英语单词
- 从未学过iPhone/iPad开发
- 喜欢苹果,充满想象力,喜欢创造,同时也愿意承受学习的压力,愿意投入时间和精力
如果你对iOS开发已具备丰富的经验,请不要在此浪费时间!
如果你只是想了解下Swift语言的开发知识,那么建议直接阅读苹果的官方文档,或另外一份教程(Swift开发入门系列教程)。
- 快速上手
- 类型
- 运算符
- Optional类型
- 流程控制
- 函数
- 闭包
- 类
- 枚举和结构体
- 协议和拓展
- 泛型
- 错误处理
- 编程语言
- iOS 开发
- 视频教程
- 开源项目
- 优秀博客
- 参考来源
shell
Shell脚本(英语:Shell script),又称 Shell 命令稿、程序化脚本,是一种电脑程序与文本文件,内容由一连串的shell命令组成,经由Unix Shell直译其内容后运作。被当成是一种脚本语言来设计,其运作方式与直译语言相当,由Unix shell扮演命令行解释器的角色,在读取shell脚本之后,依序运行其中的shell命令,之后输出结果。利用shell脚本可以进行系统管理,文件操作等。
大名鼎鼎的Atom就是基于Atom Shell来的。
Bash是shell脚本的一种,也是Mac默认的,下面分享一些shell 使用的小技巧,可以极大的提高使用效率。
在上一篇里我们定下了给pandoc写补全脚本的计划:
- 支持主选项(General options)
- 支持子选项(Reader options/General writer options)
- 支持给选项提供参数值来源。比如在敲pandoc -f之后,能够补全FORMAT的内容。
TypeScript
JavaScript 到 TypeScript 1 - 什么是 TypeScript
随着应用的庞大,项目中 JavaScript 的代码也会越来越臃肿,这时候许多 JavaScript 的语言弊端就会愈发明显,而 TypeScript 的出现,就是着力于解决 JavaScript 语言天生的弱势:静态类型。
总的来说使用 TypeScript 的这一年,什么感觉都有。但最后还是依然坚持使用 TypeScript ,因为其带来的效率提升是远远大于环境升级所带来的开销的。
TypeScript 2.0 对于产品团队来说是个伟大的历程,这个历程少不了来自社区和合作伙伴的贡献。这个版本带来了一些新的特性,可以提高开发人员的开发效率。这个版本使 TypeScript 更加接近 ECMAScript 的发展,为 JavaScript 库和工具提供了更为广泛的支持。它通过编辑类工具,带来了先进的编辑体验,增强了语言服务。
用typescript写react和node是怎样的一种体验
这是一次不好的经历,后面我很长一段时间都没再写过typescript了。但是,15年发生了两件事,让typescript再次回到我的视线。
C
- C语言起源
- C语言特性
- C语言的应用范围
- C语言标准
- 使用 C语言 的7个步骤
- 字符类型
- 整数类型
- 浮点类型
- 原子类型(atomic type),限定符
- 由 typedef 引入的说明符
- 修饰符
- 数值范围
学习C语言语法的目的:就是能够利用C语言编写程序,然后运行程序跟硬件(计算机、手机等硬件设备)进行交互。由于我们的最终目的是学习iOS开发,学习iOS开发的话必须在Mac系统下,因此我就在Mac系统环境下开发C语言程序,而不是在Windows环境下。
总结一下第一个C程序的运行步骤:
- 在编译前先执行#include指令,拷贝stdio.h的内容到源程序中
- 编译源程序,生成目标文件
- 链接C语言函数库,生成可执行文件
- 运行可执行文件,在屏幕上输出"Hello, World!"
看起来好像挺多步骤的、挺麻烦的,但是当我们点击Xcode的运行按钮时,Xcode会自动按顺序执行上面4个步骤。
指针数组和数组指针---C/C++中int p[4]和int ( p)[4]的区别
简单地说, int *p[4]
是指针数组, int(*p)[4]
是指向数组的指针。
socket编程面向的是传输层。我们在这一层上来收发HTTP报文。由于我们是静态文件服务器,所以有效的请求报文是 GET url 的格式。我们只要解析这个url,然后发送对应的文件就OK了。这个是基本的思路。
Go
- Go语言介绍
- Go安装与配置
- 0x01 设置 Go 环境
- 0x02 安装 Go
- 0x03 完整命令
1)在线学习教程:比较系统全面,非常适合新手入门学习;
2)书籍:毕竟很多人学习一门语言是从书籍开始的;
3)其他Go语言的整理资源:很多比较好的Go语言资源总结整理,推荐看;
4)Go语言中文社区:专门的Go语言中文社区,可以交流讨论,感兴趣的可以看看;
5)其他:其他与Go语言相关的一些整理;
C
C#是一个优雅的、类型安全的面向对象语言。使用C#,开发者可以在.NET框架下构建安全而强大的应用程序。
- 基本语法
- 有趣的特性
- 动态对象
- 没有涉及到的主题
- 扩展阅读
C#学习笔记(与Java、C、C++和 Python 对比)
- 基础概念和语法
- 函数
- 类与对象
- 参考资料
C# 语言是在2000发布的,至今已正式发布了7个版本,每个版本都包含了许多令人兴奋的新特性和功能更新。同时,C# 每个版本的发布都与同时期的 Visual Studio 以及 .NET 运行时版本高度耦合,这也有助于开发者更好的学习掌握 C#,并将其与 Visual Studio 以及 .NET 的使用结合起来。
- 加快C#版本的发布速度
- 非空和可空的引用类型
- 新的轻量级类:Records
- 默认接口实现
- 其它的 C# 8.0 新特性
- C#开发工具推荐
随着微软越来越开放,C#也变得越来越吸引人们的眼球。而在游戏行业中,C#也开始慢慢地获得了关注。这不, 网易绝代双娇手游团队已经全面使用.Net Core支持前后端统一C#开发,跨平台部署了。
- 0x00 前言
- 0x01 游戏引擎
- 0x02 图像相关
- 0x03 物理相关
- 0x04 结语
首先,我们要知道Unity3D中的Js脚本究竟是什么?最准确的学名,我想应该叫做UnityScript (因为Unity-Technologies在github上托管的代码就叫这个名字)。开发到底是使用C#还是UnityScript呢?如果不考虑运行的效率,仅仅考虑开发时候的感受,小匹夫就谈谈自己的看法好啦——那就是珍惜时间,远离UnityScript。
CSS
- CSS简介
- CSS基本语法
- CSS高级语法
- CSS创建
本系列文章(重拾css)主要参考王福朋“css知多少”,结合自己的理解和学习需要,修改或添加了一些内容,难免有失偏颇,仅供自我学习、参考之用。
本系列文章的结构为:
- 第一部分讲css样式的加载和层叠;
- 第二部分讲选择器以及选择器的等级;
- 第三部分讲呈现的各种样式(背景、字体、定位、浮动等)。
这样一个思路,也正是浏览器使用css的流程,是最有效的学习思路。
SegmentFault 技术周刊 Vol.38 - 神奇的 CSS
- CSS 基础特性
- 动起来
- CSS 黑科技
- 来画画吧
CSS3热身实战--过渡与动画(实现炫酷下拉,手风琴,无缝滚动)
C++
把 C++ 想象成人类社会。
访问权限、继承、友元将无比真实的反应人类社会中的种种关系。
- 一、类内部访问权限
- 二、继承时访问权限
- 三、开始处理各种继承问题(两种访问权限的混搭)
- 四、私生子的逆袭
C++ 之父 Bjarne Stroustrup:简单的表述方式才是最优的方案
1982年,贝尔实验室(美国AT&T公司)的Bjarne Stroustrup博士在c语言的基础上引入并扩充了面向对象的概念,发明了新的程序语言C++。之所以被命名为C++,是为了表达该语言与c语言的渊源关系。Bjarne Stroustrup博士因此被尊称为“C++语言之父”。
常规的PHP扩展开发流程我再别的文章里面已经介绍过了,这里不再赘述,只介绍一下C++开发PHP扩展的不同之处。
作为现代C++中最具表现力,被应用最广泛的一个语法功能,Templates(模版),无疑应该被仔细研究。自从有了STL,模版渐渐成为现代C++开发的主角。前不久因为老师的作业要求,我稍微学习了一下C++的模版,写一篇入门文,请大神轻喷,谢谢。
对神作《Effctive c++》学习的一些总结和疑问(一)
接下来,让我对书中的“条款”用自己的语言方式,作一些总结和个人心得批注。
- 标准库
- 框架
- 人工智能
- 异步事件循环
- 音频
- 生态学
- 压缩
- 并发性
- 容器
- 密码学
- 数据库
- 调试
- 游戏引擎
- 图形用户界面
- 图形
- 图像处理
- 国际化
- Jason
- 日志
- 机器学习
- 数学
- 多媒体
- 网络
- 物理学
- 机器人学
- 科学计算
- 脚本
- 序列化
- 视频
- 虚拟机
- Web应用框架
- XML
- 多项混杂
- 软件
PHP
PHP主要用于服务端的脚本程序,但PHP的功能远不局限于此。PHP主要用于以下三个领域:
- 服务端脚本
- 命令行脚本
- 编写桌面应用程序(PHP-GTK)
PHP 是用 C 语言写的。对于每个 PHPer 来说,都有着内心的一种希望写扩展的冲动了吧。然而,缺乏一个很好的切入点。Google 上搜 PHP 扩展开发,大部分都是复制品文章,甚至有些人连操作都没有操作过就搬运在了自己的博客。不过也有几篇好教程,但是都是 PHP 5 时代的产物,隐藏着非常多的坑。我会将我自己慢慢踩坑的过程记录下来,也许这就成了其它人的“教程”了吧。
前言
实战
- PHP实战创建型模式
- PHP实战结构型模式
- PHP实战行为型模式
测试用例
源码
纠错
作为我前端的入门项目,我对后台管理系统的感情还是挺深的。本着以下几点原因,写了此文。
- 对后台管理系统做一个综合全面的总结(嗯,这会是我以后项目总结的开端)。
- 也算是给新入门的一个基本概念和学习范围吧(~大神请自动忽略~)。
- 知识在于分享,也是希望和大家交流下,如何把后台管理系统写得能更具工程化,模块化,更有效率。
后台管理系统多为PC端,所以css3和HTML5的技术运用不多,会根据产品需求进行优雅降级和渐进增强。下面先上一张图,罗列下后台管理系统涉及到的方方面面,欢迎大家补充。
- Composer
- PHP7
- PSR
- Swoole
- Laravel
- Phar
- C/C++/GO
- HTML5
- Vue.js
- 深度学习/人工智能
Ruby
就其本身而言,Ruby in Rails 已经从一个简单的框架演化为强大的工具。最近几年,其名气大涨,这也合情合理;除拥有稳定的性能之外,在开发功能复杂的应用时使用 gem 能够节约大量时间。
我一直关注web领域的快速开发,虽然自己用PHP已经很顺手了,但是他那蛋疼的语法,让我这种喜欢优雅开发的人会觉得很累。所以一直对号称敏捷开发旗帜的ROR有着浓厚的兴趣,但一直苦于没有时间去深入研究。最近终于下定决心要摘下这颗宝石,这一系列文章只是我学习过程中的笔记,大家如果觉得有错误的地方还请指出,毕竟我在 ruby 领域是一个不折不扣的初学者。
- 在Mac上安装Ruby
- 最适合初学者读的文档
- 开发环境
- 一些有趣的细节
- 第一天的感受
- Ruby 语言
- Rails 框架
- 挑战解题
- 第一章 简介
- 第二章 初级:类和对象
- 第三章 块
- 第四章 模块
- 第五章 中级:单元测试
- 第六章 高级:元编程和DSL
- 附录 学习Ruby的一些小窍门
松本行弘(Yukihiro Matsumoto),Ruby语言发明者,亦是亚洲首屈一指的编程语言发明者。现兼任网络应用通信研究所(NaCl)研究员、乐天技术研究所研究员、Heroku首席架构师等。昵称“Matz”。
Java
给Java新手的一些建议——Java知识点归纳(Java基础部分)
写这篇文章的目的是想总结一下自己这么多年来使用java的一些心得体会,主要是和一些java基础知识点相关的,所以也希望能分享给刚刚入门的Java程序员和打算入Java开发这个行当的准新手们,希望可以给大家一些经验,能让大家更好学习和使用Java。
前段时间应 CSDN 邀请审核 Java 知识库内容,借此我也有机会好好梳理了下自己的 Java 知识体系, 成文一篇望能帮到即将走进或正在 Java 世界跋涉的 程序员 们。
- 第一张,基础图
- 第二张,技能图
- 第三张,延伸图
这两年微服务作为一个非常新的技术,各种理论流派试图从不同的角度去阐述其概念和优势,我一开始是拒绝的,因为我没有”Duang“的一下想清楚。个人感性地认知是,姿势不对,纯靠意会。理性的看法则是,在思想上,那些布道师们并未达到一致。经过参考各家思想之后,得到了一些自己的领悟,我分享给大家。
毕业已经一年有余,这一年里特别感谢技术管理人员的器重,以及同事的帮忙,学到了不少东西。这一年里走过一些弯路,也碰到一些难题,也受到过做为一名开发却经常为系统维护和发布当救火队员的苦恼。遂决定梳理一下自己所学的东西,为大家分享一下。
- 引言
- 语法基础
- 多线程
- 开源框架
- Web基础
- 系统架构
- Nosql
- 服务端
- 数据库相关
- 第三方接口对接
推荐几个自己写的Java后端相关的范例项目 - CSDN博客
这里推荐几个自己写的范例项目,主要采用SSM(Spring+SpringMVC+Mybatis)框架,分布式架构采用的是(dubbo+zookeeper)。范例项目的好处是简单易懂,在架构一个新的项目的时候可以直接当成脚手架来用,方便快速开发,另外项目中涉及到以及未来可能涉及到的知识点都会不断完善。
- 算法和数据结构
- 面向对象
- 编程习惯(应当避免)
- 异常处理使用不当
- Java 虚拟机 JVM
Python
让我从关于 Python 中的 asyncio 这个标准库的讨论中休息一会,谈谈我最近正在思考的一些东西:Python 的速度。对不了解我的人说明一下,我是一个 Python 的粉丝,而且我在我能想到的所有地方都积极地使用 Python。人们对 Python 最大的抱怨之一就是它的速度比较慢,有些人甚至拒绝尝试使用 Python,因为它比其他语言速度慢。这里说说为什么我认为应该尝试使用 Python,尽管它是有点慢。
12月28日,微信宣布,小程序增加了新的类目:小游戏,同时上线小游戏「跳一跳」,瞬间跳一跳成了全民游戏,玩得厉害的撑死不过200多分,如何牢牢占据排行榜的第一位呢?用Python帮助你,Python真的无所不能。
我用Python分析了42万字的歌词,为了搞清楚民谣歌手们在唱些什么
我首先写了一个爬虫,它可以根据歌手或乐队的名字来自动抓取这个歌手的所有歌,为了保证平衡,我最多只抓取前50首歌,老实说,大多数歌手被人熟知的歌并不会超过这个数字。
- 一、内容分析
- 二、创建项目
- 三、主要代码
- 四、运行
- 五、保存结果
2017第二版主要更新:
- 所有代码,包括Python教程,都升级到了Python3.6(第一版用的是Python2.7)
- 更新了Python的安装介绍。这次改用Anaconda Python发行版,以及其他一些需要的Python包
- 使用了最新的2017版pandas
- 新增了一章,用来介绍pandas的高级应用工具,和其他一些有用的小贴士
- 简单介绍了如何使用statsmodels和scikit-learn
《流畅的python》是一本适合python进阶的书,里面介绍的基本都是高级的python用法。于初学python的人来说,基础大概也就够用了,但往往由于够用让他们忘了深入, 去精通。我们希望全面了解这个语言的能力边界,可能一些高级的特性并不能马上掌握使用,因此这本书是工作之余,还有余力的人来阅读,我这边就将其有用,精妙的进阶内容整理出来。
JavaScript
JavaScript虽是一种有着近20年历史的编程语言,但其生命力却日见旺盛,伴随着互联网的发展,它己经成为21世纪最重要的编程语言之一。
- 一、世无英雄,遂使竖子成名
- 二、JavaScript技术导航
- 三、我的JavaScript学习建议
随着 JavaScript 本身的完善,越来越多的人开始喜欢使用原生 JavaScript 开发代替各种库,其中不少人发出了用原生 JavaScript 代替 jQuery 的声音。这并不是什么坏事,但也不见得就是好事。如果你真的想把 jQuery 从前端依赖库中移除掉,我建议你慎重考虑。
本文介绍了 JavaScript 初学者应该知道的一些技巧和陷阱。如果你是老司机,就当做回顾了,哪里有写的不好的地方欢迎指出。
- 你是否尝试过对一个数字数组进行 排序 呢?
- new Date() 很好用
- 替换,实际上并没有替换
- 小心使用比较
- 数组不是原始类型
- 闭包
- 聊一聊 bind
如果你不是老司机,面对众多JavaScript开发工具,也许会有些搞不清楚状况。因为,JavaScript的生态系统在迅速的变化,新手很难理解这些工具的功能以及它们所解决的问题。对此,我深有体会。
我是怎么学的呢,看书,分析源码。个人这几天统计了一下,前端书籍目前看了50多本吧,大部分都是js的。市面上的书基本,差不多都看过。
本期完
:)
欢迎关注 SegmentFault 微信公众号 :)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。