从立项到调优分析抖音小游戏的爆款秘诀

从立项到调优分析抖音小游戏的爆款秘诀,第1张

近年来,随着获客成本越来越高,游戏行业用户数量增长逐渐放缓。与此同时,由于面临资源紧张、经验不足、有效的工具少等问题,游戏开发者们需要花费高昂的成本才有可能提质增效。

游戏立项要考虑人和地利天时

游戏立项和古人的智慧可以进行很好的结合。人们做事讲究天时、地利和人和,立项也是如此。立项首先要考虑“人”,也就是考虑用户是什么样子,什么样的游戏才能吸引他们?他们的痛点和痒点是什么?很多游戏的品质非常好,但推出之后平平无奇,可能是因为在“人”方面考虑欠佳。

其次要考虑“地利”,现在小游戏的渠道和类型非常多,有抖音、微信、中心化的OV等,这些就是“地利”,大概可以分为三大类:

第一类,中心化的,例如依靠自己的流量来供给;

第二类,社交型,例如微信小游戏;

第三类,视频生态,例如抖音、B站、快手等。

在做游戏立项的时候,要考虑内容能否借助于渠道的一些特点来进行更好的运营,比如微信流量的导出导入,抖音话题内容和游戏之间是否具备天生的契合度从而使它能更好地传播。

最后要考虑“天时”,这里所说的“天时”可以理解为一个趋势,你可以关注一下近期或者未来这个渠道适合什么类型的游戏,是换妆、解谜?还是重度、轻度?要经常记录和分析抖音的分类榜、新游榜,以及编辑的推荐游戏。因为官方推荐和算法推荐的游戏类型肯定在这个渠道很受欢迎。

先看一下第一点关于人的问题,这是某个抖音小游戏用户的时间分布情况(如上图一所示),而上图二是投放传统App游戏在抖音时一天的展示量分布图,可以看到,相对于传统游戏或说抖音传统用户的热度时段分布来看,抖音小游戏的时间分布还是有很大区别,峰值和低谷都很不一样。这很值得我们去思考这批用户的特性,所以建议开发者从所谓的“天时”来分析,看看抖音小游戏上榜单和受推荐的游戏是什么类型的,来进一步探索。

如上图,从抖音的榜单来分析这些游戏的类型,可以看到比较受欢迎的都是一些女性向的、轻度的、简单的、好看的游戏。中间这个图是达人在带量的时候,采用了戴头套的恶搞方式,抖音小游戏用户很喜欢这种方式,所以它传播的范围比较广泛。而通过C总的观察,发现太过于传统型的游戏可能不太吸量。

最后是“地利”,也就是整个渠道的特点,如上图,左边这张图是抖音盒子,可以看到整个盒子的量。此前还在流量红利的时候,推荐位单日几十万的新增都有可能,但现在在这样一个推荐位上,量级就没有那么的大了,这也是生态正态发展的健康趋势,在视频生态里,还是需要靠视频来带量。

所以在立项和游戏预估方面,不能以游戏长期霸榜或者长期上榜作为最主要的流量来源。当然它可以起到一定的启动作用,但是不能作为长久的方式,长久的方式是什么呢?是上图右边这两张图,抖音游戏热度榜和游戏发行人计划,这是抖音最主要的流量来源。把游戏放到任务台,让达人主动去挑选游戏进行分发。达人喜欢什么游戏,我们就做什么游戏,这是我们立项最主要的出发点。  

分享一下《来份小龙虾》的案例,这个游戏针对的用户是低龄用户群,它是一个话题游戏,也是一个画面游戏:从龙虾的清洗到下调料烹饪再到出锅。用户在撒配料的时候,自由度非常高。 

为什么选小龙虾?因为立项的时候临近夏季,网红小龙虾自带话题性,当时瞄准了抖音平台,结果成绩还不错,目前已有3000多万的播放量。

飞鹿近期主要在运营《装扮太难了》,这款游戏刚刚上线。立项时,我们观察到换装类游戏是很吸量的,非常适合达人做推广,而解谜的话题性和梗,在抖音视频生态也是很受欢迎,所以就做了一款这样一款创新融合的游戏,结合了目前抖音上比较流行的换装和解谜游戏,换装做吸量作用,解谜助力ARPU的提升(玩家为了解题,需要观看提示)。

这款游戏上线后平均每天有2万左右的新增,看起来还是挺不错的,吸量在预期之内,整体立项的类型符合抖音的渠道特征。(截止截稿,这款游戏在抖音播放量已经冲破1800w话题播放量) 

世界上很多东西都会变,唯一不变的就是变化。立项就是要不断学习、积累、尝试、总结和创新,脑洞要一直大开和求变。

数据是调优的指挥官

那么,立项完之后怎么去调优?调优主要依靠数据,数据是调优的指挥官。 我们使用了友盟+的App统计工具U-APP和小程序统计工具U-Mini来完成数据全链路的监控和用户生命周期运营。

从数据出发,发现次留不行调次留,发现ARPU低调ARPU。调优之后再去买量、导量。之后再根据数据判断有没有必要调优,有的话就再调,越调越有经验。 并且像友盟+的U-APP和U-Mini之间的私域数据还可以相互打通,这就意味着多端平台数据可以整体管理、分析和使用。

在调优的过程中,看哪些数据最重要?

如上图所示:对于团队来说,钱最重要,钱对应了商业化数据,商业化数据再拆分为ARPU、ecpm。人均视频次数是人为可控的,人为可控的数据是游戏本身的一个行为数据, 如在友盟+的U-APP后台可以看到的数据可拆分为次留、时长和广告点击率。 对于游戏本身来说,最重要的就是内容和时长,内容越有趣,用户玩的就越久,进而会触发他们点击更多广告。从分布点来看,时长是调ARPU的一个很重要的内容。     时长怎么调?这里有一个漏斗(如上图所示),关卡类游戏可以从加载到第N关,漏斗呈削减状态,时长肯定削减的很厉害。为什么会消减?可以从两个方面来分析,一个是加载时间太长,用户体验差,所以现在一定要做点击到主页再到引导的埋点流失分析,把技术问题解决了。关卡类的游戏时长是很好调的,无非就是调它的难易程度,尽可能让越多的人留下来。

这是飞鹿之前调优的一些案例。C总说,我们在游戏上线的时候每天都会给研发发这两个表:收入+日活表和关卡+商业点表,关卡类、解谜类和模拟经营类游戏都有不同的调优方法,要沉淀最佳调优方法,后续持续使用和迭代。

c是基础,c++是c的延伸。下面给你一个我曾在网上看到的一个博客,主要就是推荐书籍的。希望对你有点帮助!加油哥们,路很辛苦

一、为何要学编程?

每个人的动机不一样。大致有:

1、为了找个好工作;或为了有更好的机会和更好的发展。

2、看到别人超厉害,所以也想学。

3、实际工作中很多场合需要。

4、从小就立志做个程序员,做软件工程师。

5、振兴中国的软件事业。

………………………………………………………………………

================================================

二、如何学编程?

1、多看好书。

差书误人子弟,不但浪费时间和精力,而且打击人的信心,差书使人很久都不会,

让会让人怀疑自已

的学习能力。

现在的书很多,但好书很少,特别是被大家公认很有价值的好书,更是少之又少。

历经多年时间考验

和市场风雨不残酷洗礼而仅存的巨著,更是极其稀少。中国历史上文学小说类书本

多如牛毛,但仅存的巨

著,也只不过<<红楼梦>>等四本名著而已。

编程方面也是如此。

2、多动手。

这一点很重要。而且特别重要。

“纸上得来终觉浅,绝知此事要躬行。”陆游的千古名句说的就是这个道理,

并且同样适合于编程方

面。

================================================

三、用什么语言最好?

这主要取决于应用领域,每种语言都有自已的长处和不足。

1、汇编语言和C语言在单片机及工控领域用较多。另外C语言也是一种通用语言,

是学C++/c#的起点。

2、C++系统编程等多个方面,最常用的编译器是VC。

3、C#/Java网络编程方面新兴的。

4、VB通用。

5、还有Delphi等。。。。。。

个人建议:从未编过程的,就从学vb开始。有基础的可直接学c++/VC。

===================================================

四、有什么好书?

几年前,台湾著名技术作家侯捷先生曾经写过一篇影响很大的书评文章,叫做

《MFC四大天王》。文章的

意思是说在MFC的浩瀚书海中,只要认真研读和学习其中四本,就可以

“五岳归来不看山”。侯先生虽以

MFC为例,但是这个道理却同样适合于MFC之外的很多具体技术领域,这不能不说是

一个有趣的统计现象。

通常在某一个具体细分的技术领域,会自然而然地出现3-5本顶级著作,它们

彼此互相配合,形成一个完

整的体系。对于学习者来说,只需要认真研读这几本书,就足以升堂入室。

我乐于将这种现称为“四书五

经现象”。对于读者来说,如果能够找到该领域中的“四书五经”,则无论在

时间上还是金钱上都是最经

济的选择。好书几本,胜过烂书几捆,这个体会想必大家都有。在此,帮助大

家遴选各个技术领域里的“

四书五经”。

编程的书可谓汗牛充栋,其中经典也是不泛其数,但绝大多数的过来人,都

一致认为,要想很快的入

门并尽快的投入到编程实践中,只要其中的四到五本也就够了,即只看经典中的经

典,圣经级的书就可以

了。

所谓活到老学到老,程序员是个终身学习的职业,要不断的看书,直到放弃编程

的那一天。所以,

您要读的好书也绝非以下推荐的这些书哟,呵呵。

一句话,由于我们的时间、精力、金钱都是有限的,如何以最小的代价换得最大

的收获。

经典好书分类热销榜

================================================================

1、Java

Java编程语言(第三版)---Java四大名著----James Gosling(Java之父)

Java编程思想(第2版)----Java四大名著----Bruce Eckel

Java编程思想(第3版)----Java四大名著----------------Bruce Eckel

JAVA 2核心技术 卷I:基础知识(原书第7版)---Java四大名著-----

Cay Horstmann

JAVA 2核心技术 卷II:高级特性(原书第7版)----Java四大名著-----

Cay Horstmann

Effective Java中文版------Java四大名著--------Joshua Bloch

精通Struts:基于MVC的Java Web设计与开发---孙卫琴

精通Hibernate:Java对象持久化技术详解---孙卫琴

Tomcat与Java Web开发技术详解------------孙卫琴

Java与模式------------------------------阎宏

2、c#

C#程序设计-------Charles Petzold“windows编程泰山北斗”---C#语言

“倚天屠龙双剑”

C# Primer中文版--------Stanley BLippman---C#语言“倚天屠龙双剑”

NET框架程序设计(修订版)--------Jeffrey Richter“windows编程泰山

北斗”---NET平台四大天王

c#Windows程序设计----------Charles Petzold“windows编程泰山北斗”

------NET平台四大天王

NET程序设计技术内幕-------------Jeff Prosise---NET平台四大天王

NET本质论--第1卷:公共语言运行库(中文版)--------Chris Sells---

NET平台四大天王

3、C++

C++程序设计语言(特别版)---c++八大金刚----Bjarne Stroustrup“C++之父”

C++ Primer (第3版)中文版----c++八大金刚---Stanley BLippman

C++ Primer (第4版)中文版----c++八大金刚---Stanley BLippman

C++标准程序库—自修教程与参考手册--c++八大金刚--Nicolai MJosuttis

C++语言的设计和演化-----c++八大金刚----Bjarne Stroustrup“C++之父”

深度探索C++对象模型---c++八大金刚----Stanley BLippman

Essential C++中文版---c++八大金刚---Stanley BLippman

Effective C++中文版 2nd Edition-----c++八大金刚------Scott Meyers

More Effective C++中文版----c++八大金刚------Scott Meyers

C++编程思想(第2版) 第1卷:标准C++导引--------Bruce Eckel

C++编程思想(第2版)第2卷:实用编程技术 --------Bruce Eckel

C++程序设计--------------------------谭浩强

C++ 程序设计教程(第2版)--------------钱能

C++ Primer Plus(第五版)中文版---Stephen Prata

广博如四库全书The c++ programming language、c++ Primer

深奥如山重水复Inside the c++ object model

程序库大全The c++ standard libray

工程经验之积累Effective c++、More Effective c++、Exceptional c++

c++八大金刚:

1、Essentital c++---lippman---C++之父,旁枝暂略,主攻核心,轻薄短小,

初学者

2、The c++ programming language----C++之父,技术权威,用词深峻,

思想深远,c++百科全书代表,

圣经。

3、c++ Primer----lippman---纵横书市十数年,c++最佳教本,c++百科全书

代表。

4、Inside the c++ object model-----lippman----揭示c++底层,非常好,

非常难。

5、Effective c++-----通过50个编程实例,展示专家经验,行文有趣,深处浅出。

--------------------------------------------------------------------------------

3 C++原创,超经典:为何要学编程?如何学编程?用什么语言最好?有

6More Effective c++----通过35个编程实例,展示专家经验,行文有趣,

深处浅出。

7The c++ standard libray---c++标准库的百科全书。

8设计模式:可复用面向对象软件的基础------good!

4C

程序设计语言(第2版·新版)---C语言“倚天屠龙双剑”---

Brian WKernighan“C语言之父”

C Primer Plus中文版(第五版)--------C语言“倚天屠龙双剑”---

Stephen Prata

C程序设计(第三版)---------------------------谭浩强

C语言大全(第四版)---------------------------HERBERT SCHILDT

C语言接口与实现:创建可重用软件的技术-------------DAVID RHANSON

C语言参考手册(原书第5版)--------------------------Samuel PHarbison

C程序设计教程---------------------------------HMDeitel/PJDeitel

C陷阱与缺陷-----------------------------------Andrew Koenig

5、VB

Visual Basic NET技术内幕-----VB编程三剑客-----------Francesco

Balena“vb首席大师”

Windows程序设计-Visual BasicNET语言描述--VB编程三剑客-----Charles

Petzold“windows编程泰山

北斗”---

NET框架程序设计:Visual BasicNET语言描述--VB编程三剑客--Jeffrey

Richter“windows编程泰山北

斗”---,Francesco Balena“vb首席大师”

Visual Basic 6编程技术大全------------------------Francesco Balena

“vb首席大师”

Visual BasicNET 从入门到精通-------------------------Petroutsos,E

高级VISUAL BASIC编程-----------------------------------MATTHEW

CURLAND

6、Delphi

Inside VCL(深入核心——VCL架构剖析)----------李维

Delphi 7高效数据库程序设计--------------李维

面向对象开发实践之路(Delphi版)----------李维

7、VC

Windows 程序设计(第5版)-----Charles Petzold“windows编程泰山北斗”

---

Windows核心编程----------Jeffrey Richter“windows编程泰山北斗”---

Windows高级编程指南---------Jeffrey Richter“windows编程泰山北斗”---

深入浅出MFC(第二版)-----“MFC四大天王”-------侯捷

MFC Windows程序设计(第2版)---MFC四大天王”---------Jeff Prosise

Visual C++ 技术内幕(第4版)--MFC四大天王”--------David Kruglinski

深入解析MFC-------------MFC四大天王”-----------George Shepherd

Visual C++NET 技术内幕(第6版)-MFC四大天王”------------David

Kruglinski

8、vf

Visual Foxpro程序设计参考手册-------------------张洪举

专家门诊——Visual FoxPro开发答疑160问-------------------张洪举

Visual FoxPro 60/90解决方案与范例大全-------------------张洪举

Visual FoxPro软件开发模式与应用案例-------------------张洪举

9、黑客

应用密码学(协议算法与C源程序-----------Bruce Schneier

网络信息安全的真相-----------Bruce Schneier

黑客大曝光:网络安全机密与解决方案(第5版)--------STUART MCCLURE

软件加密技术内幕------------看雪学院

加密与解密——软件保护技术与完全解决方案------------看雪学院

加密与解密(第二版)--------段钢

10、汇编

Intel微处理器结构、编程与接口(第六版)---------Barry B Brey

8086、奔腾机汇编语言程序设计---------Barry B Brey

Windows环境下32位汇编语言程序设计(第2版)-----------罗云彬

IBM-PC汇编语言程序设计(第2版) 本书是国内优秀教材--------沈美明 温冬婵

IBM PC汇编语言程序设计(第五版) 这本书籍是国外优秀教材-------PETER

ABEL著,沈美明 温冬蝉译

11、驱动开发

--------------------------------------------------------------------------------

4 C++原创,超经典:为何要学编程?如何学编程?用什么语言最好?有

Windows WDM设备驱动程序开发指南----------------Chris Cant

Windows 2000/XP WDM设备驱动程序开发(第2版)--------------武安河

WINDOWS 2000/XP WDM设备驱动程序开发-------------------武安河

12、网络

计算机网络第四版中文版----网络编程三剑客---Andrew STanenbaum

TCP/IP详解3卷本--------------Richard Stevens----网络编程三剑客

UNIX网络编程2卷本---------Richard Stevens----网络编程三剑客

用TCP/IP进行网际互联-----------Douglas E Comer

高级TCP/IP编程-------------------Jon C Snader

C++网络编程-----------------------Douglas Schmidt

UNIX环境高级编程(第2版)--------------------Richard Stevens

13、算法

计算机程序设计艺术-------DonaldEKnuth----------算法“倚天屠龙”双剑

算法导论-----------------Thomas H Cormen--------算法“倚天屠龙”双剑

离散数学及其应用----------Kenneth HRosen

具体数学—计算机科学基础--------DonaldEKnuth

14、图形编程

Windows 图形编程--FENG YUAN --图形编程界的Charles Petzold之书

15、数据结构

数据结构 C++语言描述》5800(Data Structures C++) William Ford,

William Topp 刘卫东 沈官林

数据结构算法与应用-C++语言描述》4900Sartej Sahni 汪诗林 孙晓东

等机械工业出版社

16、软件工程

设计模式--可复用面向对象软件的基础

重构—改善既有代码的设计

17、 *** 作系统

深入理解计算机系统(修订版)-------RANDAL EBRYANT

18、Unix

UNIX 网络编程 卷I 套接字联网API(英文版 第三版

UNIX 编程艺术

UNIX环境高级编程(英文影印第2版-----UNIX编程“圣经

UNIX环境高级编程(英文影印版)(第2版)

99-UNIX环境高级编程(第2版)

UNIX环境高级编程(第2版)---UNIX编程“圣经

UNIX网络编程 第1卷:套接口API(第3版)

UNIX网络编程卷2:进程间通信(第2版)(英文影印版)

UNIX 网络编程(第二版)第2卷:进程间通信

UNIX编程环境

UNIX 网络编程 卷I 套接字联网API(英文版 第三版

UNIX系统编程

UNIX环境高级编程

UNIX环境高级编程(英文影印版

88-LINUX内核分析及编程

UNIX 网络编程 卷I 套接字联网API(英文版 第三版)

UNIX网络编程 第1卷:套接口API(第3版)

UNIX 网络编程(第二版)第2卷:进程间通信

UNIX网络编程卷2:进程间通信(第2版)(英文影印版)

UNIX 网络编程(第2版)第1卷:套接口API和X/Open 传输接口API

UNIX网络编程(卷1):连网的APLS:套接字与XTI(第二版)(英文影印版)

UNIX环境高级编程

UNIX 环境高级编程(英文版)

UNIX环境高级编程(第2版)

Unix技术手册

19、Linux

Linux内核设计与实现

Linux内核完全注释

LINUX内核分析及编程

GNU/Linux 编程指南(第二版)

Linux设备驱动程序(第三版)

嵌入式设计及Linux驱动开发指南——基于ARM 9处理器

Linux设备驱动程序 第三版(英文影印版)

Linux内核设计与实现(第2版)

Linux内核设计与实现(英文影印版)(第2版)

linux技术手册

20、游戏编程

Windows游戏编程大师技巧(第二版

游戏之旅--我的编程感悟

OpenGL超级宝典:第三版

OpenGL编程指南(第四版)

Java 游戏高级编程

J2ME手机游戏编程入门

游戏之旅——我的编程感悟

游戏开发中的人工智能(英文影印版)

3D游戏:卷2 动画与高级实时渲染技术

面向对象的游戏开发

Java 游戏高级编程

3D游戏编程大师技巧

游戏编程精粹

面向对象的游戏开发

3D游戏 卷1:实时渲染与软件技术

3D游戏:卷2 动画与高级实时渲染技…

J2ME手机游戏编程入门

Direct3D游戏编程入门教程(第二版…

21、移动开发

Windows Mobile手机应用开发

SYMBIAN OS C++手机应用开发

68-Windows Mobile手机应用开发--傅曦 齐宇 徐骏

48-SYMBIAN OS C++手机应用开发 (第2卷)-RICHARD HARRISON著,周良忠 王伯欣译

68-SYMBIAN OS C++手机应用开发-RICHARD HARRISON著,周良忠译

Windows CEnet内核定制及应用程序开发-周毓林 宁杨 陆贵强 付林林

嵌入式系统Windows CE 开发技巧与实例--傅曦

Palm OS编程实践---绝版

22、单片机

单片机轻松入门----------------------------------周坚(平凡老师)

单片机典型模块设计实例导航-----------------------求是科技

例说8051----------------------------------------张义和 陈敌北

KEIL CX51 V70单片机高级语言编程与ΜVISION2应用实践-----徐爱钧

单片机应用程序设计技术(修订版)--------------------周航慈

8051单片机实践与应用-------------------------------吴金戎

MCS-51系列单片机实用接口技术---------------------李华

23、串并口通讯

Visual C++/Turbo C串口通信编程实践------------------龚建伟

VISUAL BASIC与RS-232串行通信控制(最新版)----------范逸之

24、电子

无线电识图与电路故障分析轻松入门(第二版) -------------------胡斌

无线电元器件检测与修理技术轻松入门(第二版) -------------------胡斌

图表细说电子技术识图-------------------胡斌

图表细说电子元器件-------------------胡斌

图表细说元器件及实用电路-------------------胡斌

怎样成为一名程序员

通过以下4个阶段的训练, 没有任何编程基础人就可以成为一名普通的程序员。

第一阶段:掌握一种编程语言

学习内容:学习任意一种主流的编程语言。例如C++语言。

学习目标:熟练掌握一种语言的语法和基本的编程技巧。

学习时间:3个月左右

注意事项:编程语言和编程工具是两回事情,编程语言是指C++、Basic、

Object Pascal等

程序设计语言,它们是像汉语、英语一样的抽象的语法规则,编程工具是指

Visual C++ 60、Visual Basic 60、Delphi 70等包括了源代码编辑器、

程序编译器

在内的集成化、可视化的软件开发工具。C++源程序可以在Visual C++

60里编写,也可以在

记事本里编写,而同一个C++源程序可以用Visual C++ 60编译、执行,

也可以用C++ Builder 50

编译、执行,所以: C++ 不等于 Visual C++ 60

第二阶段:掌握一种编程工具

学习内容:学习任意一种主流的编程工具。注意编程工具要和第一阶段学习

的编程语言一致,例如你学习的

编程语言是C++,那么编程工具要选Visual C++ 60或者C++ Builder 50。

学习目标:熟练掌握这种编程工具基本用法,例如:菜单、组件、程序跟踪调试、

编写Windows程序等。

学习时间:3个月左右

注意事项:这个阶段侧重编程工具的使用,同时进一步熟习编程语言,最后达到

能熟练编写各种基本的

Windows程序。

第三阶段:掌握“算法与数据结构”这门课程

学习内容:算法与数据结构,推荐许卓群的《数据结构》,高等教育出版社出版。

学习目标:熟练掌握各种常用的算法与数据结构

学习时间:4个月左右

注意事项:这是一门不可或缺的软件开发课程,曾经有一本经典计算机专业书籍

叫做《数据结构+算法=程序》,

这说明了数据结构和算法的重要性。它能帮我们建立良好的程序分析与设计能力。

第四阶段:实现一个模拟的小型软件项目

学习内容:软件项目的开发过程

学习目标:掌握软件项目的基本开发过程和方法

学习时间:4个月左右

注意事项:自己完成一个模拟的小型软件项目,强烈推荐做一个MIS(管理信息

系统)软件,参考用书推荐

“中小型信息管理系统开发实例系列丛书”,人民邮电出版社,它的例子详实有效,

以它为基础再加以扩展,就可以做出实用的MIS软件来。

此丛书包括多种开发工具,大家可以选择适合自己的:《VISUAL FOXPRO60

数据库系统开发实例导航》

《JAVA数据库系统开发实例导航》 《VISUAL BASIC数据库系统开发实例导航》

《VISUAL C++60数据库系统开发实例导航》 《ASPNET数据库管理系统开发实

例导航》

DELPHI数据库系统开发实例导航》 《POWERBUILDER 80数据库系统开发实例导航》。

国内比较畅销的当属机械工业出版社黑色那套了,其中精品很多。入门的

《Oracle 9i初学者指南》浅显易懂,是入门的好帮手。开发方面

《Oracle 9i PL/SQL程序设计》,DBA方面《Oracle 9i DBA手册》,

调优方面《Oracle 9i性能调优指南》都是经典的书,根据需要选择吧。

我觉得其中《Oracle 9i 参考手册》是不错的书,比较全面实用,

各方面涉及就不深入了。

其他经典书籍又不能绕过Tom了,他的《Oracle专家高级编程》

(Expert one-by-on Oracle)是绝对的经典,可惜中文版被翻译糟蹋了,

我正在看,其中的翻译有的术语很怪异,有的不知所云,确实有点累,

但内容深入,涉及到Oracle内部结构、锁机制、导入导出的使用、性能调优

等等等等很多的方面。主要基于Oracle 817,但是用他的原话来说99%的可

以毫无变动的用到9i上。他还基于这本书写了另一本新书《Effective Oracle

by Design》(2003),国内尚没有翻译版,要买的话只有Amazon了,目前倒

是降价中。内容主要是关于开发的一整套,比如团队开发中的分工、开发的原则、

性能调优等等。这两本书的内容介绍和目录大家可以到asktomoraclecom看到,

总体来说都是大师之作。

C语言是个很强大的编程语言,学会C语言可以学会跟会多的编程语言和脚本语言,有时会学些软件会有变成,语言与C语言的语法相同,学习这个软件就更容易了。也有人只学数据库而成功的人,学数据库也要学c语言的,属于后台。数据库也很强大,具体怎么强大,只有学的人才知道。ps比较简单,是个处理软件,应该说这个比较实用。总体来说学习任何一个都得看自己学的程度,每个都是很有用的,程度好,想怎么让它有用就怎么有用。尝试去学,会发现无论学哪个都是非常有用的,得看看自己的觉悟了

对于做过 BI 开发的朋友,ETL 并不陌生,只要涉及到数据源的数据抽取、数据的计算和处理过程的开发,都是 ETL,ETL 就这三个阶段,Extraction 抽取,Transformation 转换,Loading 加载。

从不同数据源抽取数据 EXTRACTION ,按照一定的数据处理规则对数据进行加工和格式转换 TRASFORMATION,最后处理完成的输出到目标数据表中也有可能是文件等等,这个就是 LOADING。

再通俗一点讲,ETL 的过程就跟大家日常做菜一样,需要到菜市场的各个摊位买好菜,把菜买回来要摘一下,洗一洗,切一切最后下锅把菜炒好端到饭桌上。菜市场的各个摊位就是数据源,做好的菜就是最终的输出结果,中间的所有过程像摘菜、洗菜、切菜、做菜就是转换。

在开发的时候,大部分时候会通过 ETL 工具去实现,比如常用的像 KETTLE、PENTAHO、IBM DATASTAGE、INFORNAICA、微软 SQL SERVER 里面的 SSIS 等等,在结合基本的 SQL 来实现整个 ETL 过程。

也有的是自己通过程序开发,然后控制一些数据处理脚本跑批,基本上就是程序加 SQL 实现。

哪种方式更好,也是需要看使用场景和开发人员对那种方式使用的更加得心应手。我看大部分软件程序开发人员出身的,碰到数据类项目会比较喜欢用程序控制跑批,这是程序思维的自然延续。纯 BI 开发人员大部分自然就选择成熟的 ETL 工具来开发,当然也有一上来就写程序脚本的,这类 BI 开发人员的师傅基本上是程序人员转过来的。

用程序的好处就是适配性强,可扩展性强,可以集成或拆解到到任何的程序处理过程中,有的时候使用程序开发效率更高。难就难在对维护人员有一定的技术要求,经验转移和可复制性不够。

用 ETL 工具的好处,第一是整个 ETL 的开发过程可视化了,特别是在数据处理流程的分层设计中可以很清晰的管理。第二是链接到不同数据源的时候,各种数据源、数据库的链接协议已经内置了,直接配置就可以,不需要再去写程序去实现。第三是各种转换控件基本上拖拉拽就可以使用,起到简化的代替一部分 SQL 的开发,不需要写代码去实现。第四是可以非常灵活的设计各种 ETL 调度规则,高度配置化,这个也不需要写代码实现。

所以在大多数通用的项目中,在项目上使用 ETL 标准组件开发会比较多一些。

ETL 从逻辑上一般可以分为两层,控制流和数据流,这也是很多 ETL 工具设计的理念,不同的 ETL 工具可能叫法不同。

控制流就是控制每一个数据流与数据流处理的先后流程,一个控制流可以包含多个数据流。比如在数据仓库开发过程中,第一层的处理是ODS层或者Staging 层的开发,第二层是DIMENSION维度层的开发,后面几层就是DW 事实层、DM数据集市层的开发。通过ETL的调度管理就可以让这几层串联起来形成一个完整的数据处理流程。

数据流就是具体的从源数据到目标数据表的数据转换过程,所以也有 ETL 工具把数据流叫做转换。在数据流的开发设计过程中主要就是三个环节,目标数据表的链接,这两个直接通过 ETL 控件配置就可以了。中间转换的环节,这个时候就可能有很多的选择了,调 SQL 语句、存储过程,或者还是使用 ETL 控件来实现。

有的项目上习惯使用 ETL 控件来实现数据流中的转换,也有的项目要求不使用标准的转换组件使用存储过程来调用。也有的是因为数据仓库本身这个数据库不支持存储过程就只能通过标准的SQL来实现。

我们通常讲的BI数据架构师其实指的就是ETL的架构设计,这是整个BI项目中非常核心的一层技术实现,数据处理、数据清洗和建模都是在ETL中去实现。一个好的ETL架构设计可以同时支撑上百个包就是控制流,每一个控制流下可能又有上百个数据流的处理过程。之前写过一篇技术文章,大家可以搜索下关键字 BIWORK ETL 应该在网上还能找到到这篇文章。这种框架设计不仅仅是ETL框架架构上的设计,还有很深的ETL项目管理和规范性控制器思想,包括后期的运维,基于BI的BI分析,ETL的性能调优都会在这些框架中得到体现。因为大的BI项目可能同时需要几十人来开发ETL,框架的顶层设计就很重要。

Jstat名称:Java Virtual Machine statistics monitoring tool

功能描述:

Jstat是JDK自带的一个轻量级小工具。它位于java的bin目录下,主要利用JVM内建的指令对Java应用程序的资源和性能进行实时的命令行的监控,包括了对Heap size和垃圾回收状况的监控。

命令用法:jstat [-命令选项] [vmid] [间隔时间/毫秒] [查询次数]

注意:使用的jdk版本是jdk8。

C:\Users\Administrator>jstat -helpUsage: jstat -help|-options jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]] Definitions: <option> An option reported by the -options option <vmid> Virtual Machine Identifier A vmid takes the following form: <lvmid>[@<hostname>[:<port>]] Where <lvmid> is the local vm identifier for the target Java virtual machine, typically a process id; <hostname> is the name of the host running the target Java virtual machine; and <port> is the port number for the rmiregistry on the target host See the jvmstat documentation for a more complete description of the Virtual Machine Identifier <lines> Number of samples between header lines <interval> Sampling interval The following forms are allowed: <n>["ms"|"s"] Where <n> is an integer and the suffix specifies the units as milliseconds("ms") or seconds("s") The default units are "ms" <count> Number of samples to take before terminating -J<flag> Pass <flag> directly to the runtime system

option:参数选项

-t:可以在打印的列加上Timestamp列,用于显示系统运行的时间

-h:可以在周期性数据输出的时候,指定输出多少行以后输出一次表头

vmid:Virtual Machine ID( 进程的 pid)

interval:执行每次的间隔时间,单位为毫秒

count:用于指定输出多少次记录,缺省则会一直打印

option 可以从下面参数中选择

jstat -options

-class 用于查看类加载情况的统计

-compiler 用于查看HotSpot中即时编译器编译情况的统计

-gc 用于查看JVM中堆的垃圾收集情况的统计

-gccapacity 用于查看新生代、老生代及持久代的存储容量情况

-gcmetacapacity 显示metaspace的大小

-gcnew 用于查看新生代垃圾收集的情况

-gcnewcapacity 用于查看新生代存储容量的情况

-gcold 用于查看老生代及持久代垃圾收集的情况

-gcoldcapacity 用于查看老生代的容量

-gcutil 显示垃圾收集信息

-gccause 显示垃圾回收的相关信息(通-gcutil),同时显示最后一次仅当前正在发生的垃圾收集的原因

-printcompilation 输出JIT编译的方法信息

示例:

1-class 类加载统计

[root@hadoop ~]# jps #先通过jps获取到java进程号(这里是一个zookeeper进程)3346 QuorumPeerMain7063 Jps[root@hadoop ~]# jstat -class 3346 #统计JVM中加载的类的数量与sizeLoaded Bytes Unloaded Bytes Time 1527 28427 0 00 102

Loaded:加载类的数量

Bytes:加载类的size,单位为Byte

Unloaded:卸载类的数目

Bytes:卸载类的size,单位为Byte

Time:加载与卸载类花费的时间

2-compiler 编译统计

[root@hadoop ~]# jstat -compiler 3346 #用于查看HotSpot中即时编译器编译情况的统计Compiled Failed Invalid Time FailedType FailedMethod 404 0 0 019 0

Compiled:编译任务执行数量

Failed:编译任务执行失败数量

Invalid:编译任务执行失效数量

Time:编译任务消耗时间

FailedType:最后一个编译失败任务的类型

FailedMethod:最后一个编译失败任务所在的类及方法

3-gc 垃圾回收统计

[root@hadoop ~]# jstat -gc 3346 #用于查看JVM中堆的垃圾收集情况的统计 S0C S1C S0U S1U EC EU OC OU MC MU CCSC CCSU YGC YGCT FGC FGCT GCT 1280 1280 00 1280 10240 9198 151040 20424 84480 81304 10240 9960 7 0019 0 0000 0019

S0C:年轻代中第一个survivor(幸存区)的容量 (字节

S1C:年轻代中第二个survivor(幸存区)的容量 (字节)

S0U:年轻代中第一个survivor(幸存区)目前已使用空间 (字节)

S1U:年轻代中第二个survivor(幸存区)目前已使用空间 (字节)

EC:年轻代中Eden(伊甸园)的容量 (字节)

EU:年轻代中Eden(伊甸园)目前已使用空间 (字节)

OC:Old代的容量 (字节)

OU:Old代目前已使用空间 (字节)

MC:metaspace(元空间)的容量 (字节)

MU:metaspace(元空间)目前已使用空间 (字节)

CCSC:当前压缩类空间的容量 (字节)

CCSU:当前压缩类空间目前已使用空间 (字节)

YGC:从应用程序启动到采样时年轻代中gc次数

YGCT:从应用程序启动到采样时年轻代中gc所用时间(s)

FGC:从应用程序启动到采样时old代(全gc)gc次数

FGCT:从应用程序启动到采样时old代(全gc)gc所用时间(s)

GCT:从应用程序启动到采样时gc用的总时间(s)

4-gccapacity 堆内存统计

[root@hadoop ~]# jstat -gccapacity 3346 #用于查看新生代、老生代及持久代的存储容量情况 NGCMN NGCMX NGC S0C S1C EC OGCMN OGCMX OGC OC MCMN MCMX MC CCSMN CCSMX CCSC YGC FGC 12800 832640 12800 1280 1280 10240 151040 1665920 151040 151040 00 10567680 84480 00 10485760 10240 7 0[root@hadoop ~]# jstat -gccapacity -h5 3346 1000 #-h5:每5行显示一次表头 1000:每1秒钟显示一次,单位为毫秒 NGCMN NGCMX NGC S0C S1C EC OGCMN OGCMX OGC OC MCMN MCMX MC CCSMN CCSMX CCSC YGC FGC 12800 832640 12800 1280 1280 10240 151040 1665920 151040 151040 00 10567680 84480 00 10485760 10240 7 0 12800 832640 12800 1280 1280 10240 151040 1665920 151040 151040 00 10567680 84480 00 10485760 10240 7 0 12800 832640 12800 1280 1280 10240 151040 1665920 151040 151040 00 10567680 84480 00 10485760 10240 7 0 12800 832640 12800 1280 1280 10240 151040 1665920 151040 151040 00 10567680 84480 00 10485760 10240 7 0 12800 832640 12800 1280 1280 10240 151040 1665920 151040 151040 00 10567680 84480 00 10485760 10240 7 0 NGCMN NGCMX NGC S0C S1C EC OGCMN OGCMX OGC OC MCMN MCMX MC CCSMN CCSMX CCSC YGC FGC 12800 832640 12800 1280 1280 10240 151040 1665920 151040 151040 00 10567680 84480 00 10485760 10240 7 0 12800 832640 12800 1280 1280 10240 151040 1665920 151040 151040 00 10567680 84480 00 10485760 10240 7 0 12800 832640 12800 1280 1280 10240 151040 1665920 151040 151040 00 10567680 84480 00 10485760 10240 7 0 12800 832640 12800 1280 1280 10240 151040 1665920 151040 151040 00 10567680 84480 00 10485760 10240 7 0

NGCMN:年轻代(young)中初始化(最小)的大小(字节)

NGCMX:年轻代(young)的最大容量 (字节)

NGC:年轻代(young)中当前的容量 (字节)

S0C:年轻代中第一个survivor(幸存区)的容量 (字节)

S1C:年轻代中第二个survivor(幸存区)的容量 (字节)

EC:年轻代中Eden(伊甸园)的容量 (字节)

OGCMN:old代中初始化(最小)的大小 (字节)

OGCMX:old代的最大容量(字节)

OGC:old代当前新生成的容量 (字节)

OC:Old代的容量 (字节)

MCMN:metaspace(元空间)中初始化(最小)的大小 (字节)

MCMX:metaspace(元空间)的最大容量 (字节)

MC:metaspace(元空间)当前新生成的容量 (字节)

CCSMN:最小压缩类空间大小

CCSMX:最大压缩类空间大小

CCSC:当前压缩类空间大小

YGC:从应用程序启动到采样时年轻代中gc次数

FGC:从应用程序启动到采样时old代(全gc)gc次数

5-gcmetacapacity 元数据空间统计

[root@hadoop ~]# jstat -gcmetacapacity 3346 #显示元数据空间的大小MCMN MCMX MC CCSMN CCSMX CCSC YGC FGC FGCT GCT00 10567680 84480 00 10485760 10240 8 0 0000 0020

MCMN:最小元数据容量

MCMX:最大元数据容量

MC:当前元数据空间大小

CCSMN:最小压缩类空间大小

CCSMX:最大压缩类空间大小

CCSC:当前压缩类空间大小

YGC:从应用程序启动到采样时年轻代中gc次数

FGC:从应用程序启动到采样时old代(全gc)gc次数

FGCT:从应用程序启动到采样时old代(全gc)gc所用时间(s)

GCT:从应用程序启动到采样时gc用的总时间(s)

6-gcnew 新生代垃圾回收统计

[root@hadoop ~]# jstat -gcnew 3346 #用于查看新生代垃圾收集的情况S0C S1C S0U S1U TT MTT DSS EC EU YGC YGCT1280 1280 678 00 1 15 640 10240 3622 8 0020

S0C:年轻代中第一个survivor(幸存区)的容量 (字节)

S1C:年轻代中第二个survivor(幸存区)的容量 (字节)

S0U:年轻代中第一个survivor(幸存区)目前已使用空间 (字节)

S1U:年轻代中第二个survivor(幸存区)目前已使用空间 (字节)

TT:持有次数限制

MTT:最大持有次数限制

DSS:期望的幸存区大小

EC:年轻代中Eden(伊甸园)的容量 (字节)

EU:年轻代中Eden(伊甸园)目前已使用空间 (字节)

YGC:从应用程序启动到采样时年轻代中gc次数

YGCT:从应用程序启动到采样时年轻代中gc所用时间(s)

7-gcnewcapacity 新生代内存统计

[root@hadoop ~]# jstat -gcnewcapacity 3346 #用于查看新生代存储容量的情况NGCMN NGCMX NGC S0CMX S0C S1CMX S1C ECMX EC YGC FGC12800 832640 12800 83200 1280 83200 1280 666240 10240 8 0

NGCMN:年轻代(young)中初始化(最小)的大小(字节)

NGCMX:年轻代(young)的最大容量 (字节)

NGC:年轻代(young)中当前的容量 (字节)

S0CMX:年轻代中第一个survivor(幸存区)的最大容量 (字节)

S0C:年轻代中第一个survivor(幸存区)的容量 (字节)

S1CMX:年轻代中第二个survivor(幸存区)的最大容量 (字节)

S1C:年轻代中第二个survivor(幸存区)的容量 (字节)

ECMX:年轻代中Eden(伊甸园)的最大容量 (字节)

EC:年轻代中Eden(伊甸园)的容量 (字节)

YGC:从应用程序启动到采样时年轻代中gc次数

FGC:从应用程序启动到采样时old代(全gc)gc次数

8-gcold 老年代垃圾回收统计

[root@hadoop ~]# jstat -gcold 3346 #用于查看老年代及持久代垃圾收集的情况MC MU CCSC CCSU OC OU YGC FGC FGCT GCT84480 82275 10240 10037 151040 21022 8 0 0000 0020 

MC:metaspace(元空间)的容量 (字节)

MU:metaspace(元空间)目前已使用空间 (字节)

CCSC:压缩类空间大小

CCSU:压缩类空间使用大小

OC:Old代的容量 (字节)

OU:Old代目前已使用空间 (字节)

YGC:从应用程序启动到采样时年轻代中gc次数

FGC:从应用程序启动到采样时old代(全gc)gc次数

FGCT:从应用程序启动到采样时old代(全gc)gc所用时间(s)

GCT:从应用程序启动到采样时gc用的总时间(s)

9-gcoldcapacity 老年代内存统计

[root@hadoop ~]# jstat -gcoldcapacity 3346 #用于查看老年代的容量OGCMN OGCMX OGC OC YGC FGC FGCT GCT151040 1665920 151040 151040 8 0 0000 0020

OGCMN:old代中初始化(最小)的大小 (字节)OGCMX:old代的最大容量(字节)OGC:old代当前新生成的容量 (字节)OC:Old代的容量 (字节)YGC:从应用程序启动到采样时年轻代中gc次数FGC:从应用程序启动到采样时old代(全gc)gc次数FGCT:从应用程序启动到采样时old代(全gc)gc所用时间(s)GCT:从应用程序启动到采样时gc用的总时间(s) 在此我向大家推荐一个架构学习交流圈。交流学习指导伪鑫:1253431195(里面有大量的面试题及答案)里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化、分布式架构等这些成为架构师必备的知识体系。还能领取免费的学习资源,目前受益良多

10-gcutil 垃圾回收统计

[root@hadoop ~]# jstat -gcutil 3346 #显示垃圾收集信息S0 S1 E O M CCS YGC YGCT FGC FGCT GCT5297 000 4210 1392 9739 9802 8 0020 0 0000 0020 

S0:年轻代中第一个survivor(幸存区)已使用的占当前容量百分比

S1:年轻代中第二个survivor(幸存区)已使用的占当前容量百分比

E:年轻代中Eden(伊甸园)已使用的占当前容量百分比

O:old代已使用的占当前容量百分比

M:元数据区已使用的占当前容量百分比

CCS:压缩类空间已使用的占当前容量百分比

YGC :从应用程序启动到采样时年轻代中gc次数

YGCT :从应用程序启动到采样时年轻代中gc所用时间(s)

FGC :从应用程序启动到采样时old代(全gc)gc次数

FGCT :从应用程序启动到采样时old代(全gc)gc所用时间(s)

GCT:从应用程序启动到采样时gc用的总时间(s)

11-gccause

[root@hadoop ~]# jstat -gccause 3346 #显示垃圾回收的相关信息(通-gcutil),同时显示最后一次或当前正在发生的垃圾回收的诱因S0 S1 E O M CCS YGC YGCT FGC FGCT GCT LGCC GCC5297 000 4609 1392 9739 9802 8 0020 0 0000 0020 Allocation Failure No GC

LGCC:最后一次GC原因

GCC:当前GC原因(No GC 为当前没有执行GC)

12-printcompilation JVM编译方法统计

[root@hadoop ~]# jstat -printcompilation 3346 #输出JIT编译的方法信息Compiled Size Type Method421 60 1 sun/nio/ch/Util$2 clear

Compiled:编译任务的数目

Size:方法生成的字节码的大小

Type:编译类型

Method:类名和方法名用来标识编译的方法。类名使用/做为一个命名空间分隔符。方法名是给定类中的方法。上述格式是由-XX:+PrintComplation选项进行设置的

远程监控

与jps一样,jstat也支持远程监控,同样也需要开启安全授权,方法参照jps。

C:\Users\Administrator>jps 1921681461283346 QuorumPeerMain3475 JstatdC:\Users\Administrator>jstat -gcutil 3346@192168146128 S0 S1 E O M CCS YGC YGCT FGC FGCT GCT 5297 000 6515 1392 9739 9802 8 0020 0 0000 0020

机器语言啊,所有语言运行都以机器语言运行的吧。高级语言,就像用英语说,如果某条件成立就执行某命令。 机器语言就是0101。汇编语言就是push call 之类的。

一般来说高级语言接近逻辑判断的写法,比较有条理。 通过编译器转成汇编代码,再转成机器码。windows下一般就是exe 这样的东东了,实际上就是一连串的0101,而在这串01以一定的规格开头用来描述这个exe 的长度,入口。。。就是exe 文件了 。

机器,汇编,高级 的速度不需要太在意,liunx 还是用c语言写的

一、Objective-C

C语言是iOS开发的语言基础,而Objective-C是iOS开发的标准语言,也是为众多iphone开发工程师所公认的标准,所以必须要掌握。内容包括以下这些:

(1)Objective-C语言基础;

(2)library,framework的制作;

(3)Runtime编程;

(4)LLVM原理和调优。

二、 *** 作系统

*** 作系统使计算机系统所有资源最大限度地发挥作用,提供各种形式的用户界面,使用户有一个好的工作环境,为其它软件的开发提供必要的服务和相应的接口。所以,必须对ISO *** 作系统很熟悉才行。包括以下方面的内容:

(1)iOS内存管理和调优;

(2)iOS的文件系统和沙盒机制;

(3)iOS多线程编程(Thread,GCD,NSOperation);

(4)iOS网络和服务器编程(,);

(5)iOS系统的各种安全机制。

三、网络编程

网络编程是学习iOS开发必须掌握的编程技巧,涉及到Htpps、Socket编程等;在这一部分处理的规范程度,直接影响到苹果AppStore的审核。

(1)iOS网络发送机制调整和优化();

(2)Socket编程;

(3)网络传输中的各种保障;

(4)对传输协议的调整优化。

四、数据库&持久化方案

数据库持久化就是把数据保存到可永久保存的存储设备中,持久化的主要应用是将内存中的数据存储在关系型的数据库中。

(1)常规持久化方案(Keychain,Sqlite,CoreData);

(2)数据库的使用和设计(Sqlite);

(3)数据结构优化,Sql调优。

五、图形图像编程

iOS开发过程中,大部分的APP都是采用多视图设计来完成的。所以要熟悉一些图像的绘制:

(1)UIKit,和CoreText的绘制;

(2),Quartz2D,MediaPlayer,;

(3)OpenGLES,GLKit,SpriteKit,SceneKit,Metal。

六、数据结构&算法

懂得基本的算法:

(1)基本的算法和数据结构(排序搜索算法,数组,队列);

(2)较复杂数据结构的灵活应用(二叉树,图等);

(3)复杂的专项算法(图像识别算法,拓扑定位等)。

七、业务能力

作为一名优秀或者说是及格的iOS程序员,必须要有一定的将功能需求转化并实现的业务能力:

(1)一般性业务功能需求分析及实现;

(2)重要业务模块的需求分析及实现;

(3)中小规模产品的架构,系统设计和实现;

(4)大规模产品或产品线的架构,系统设计和实现;

(5)平台级产品的架构,系统设计和实现。

八、安全方案

另外,还需要提供对数据安全方面有利的方案:

(1)本地数据存储安全(Keychain);

(2)授权和身份验证;

(3)传输安全(对称,非对称,SSL);

(4)App代码安全。

九、专业素质

作为一名iOS工程师,需要具备一定专业素质,包括:

(1)团队协作能力。软件开发要求开发参与者间有一定默契度,从事自己工作之余为其他同伴创造条件;

(2)沟通能力。能清晰的把你对项目的理解、开发中的问题等转达给同事和用户;

(3)强烈的好奇心和学习精神。IOS软件开发的变化和创新几乎是每时每刻的,优秀的程序员要适应和主动迎合行业变化的大环境;

(4)冷静、细心。及时发现问题和判断对策。

以上就是关于从立项到调优分析抖音小游戏的爆款秘诀全部的内容,包括:从立项到调优分析抖音小游戏的爆款秘诀、请教达人们,初学者是先学c还是C++比较好点,可以给出书目么、计算机c语言、数据库、ps学哪一个最有用等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/9784882.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存