当前位置: 首页 > news >正文

网站开发论文中期检查表网络推广与营销

网站开发论文中期检查表,网络推广与营销,为博彩做网站日入两万,团购做的好的网站GN语法及在鸿蒙的使用 [gnninja学习 0x01]gn和ninja是什么 ohos_sdk/doc/subsys-build-gn-coding-style-and-best-practice.md GN 语言与操作 一、gn简介 gn是generate ninja的缩写,它是一个元编译系统(meta-build system),是ninja的前端&am…

GN语法及在鸿蒙的使用
[gn+ninja学习 0x01]gn和ninja是什么
ohos_sdk/doc/subsys-build-gn-coding-style-and-best-practice.md
GN 语言与操作

一、gn简介

gn是generate ninja的缩写,它是一个元编译系统(meta-build system),是ninja的前端,gn和ninja结合起来,完成OpenHarmony操作系统的编译任务。
元构建系统是一个生成其他构建系统的构建系统,cmake就是一个非常典型的元构建系统。本系统文章要学习的gn也是个元构建系统。

类别gn+ninjacmake+make
元构建系统gncmake
构建系统ninjamake
元构建文件BUILD.gnCMake.txt
构建文件*.ninjaMakefile

二、代码风格

命名

总体上遵循Linux kernel的命名风格,即小写字母+下划线的命名风格。

局部变量

我们这里对局部变量的定义为:在某作用域内,且不向下传递的变量。

为了更好的区别于全局变量,局部变量统一采用下划线开头。

# 例1 action运行脚本生成文件.
action("some_action") {...# _output是个局部变量,所以使用下划线开头_output = "${target_out_dir}/${target_name}.out"outputs = [ _output ]args = [..."--output",# 使用rebase_path转换目录.将相对于当前目录的文件名转换为根目录rebase_path(_output, root_build_dir),...]...
}

全局变量

全局变量使用小写字母开头。

如果变量值可以被gn args修改,则需要使用declare_args来声明,否则不要使用declare_args。

#例2
declare_args() {# 可以通过gn args来修改some_feature的值some_feature = false
}

目标命名

目标命名采用小写字母+下划线的命名方式。

模板中的子目标命名方式采用"${target_name}+双下划线+后缀"的命名方式。这样做有两点好处:

加入"${target_name}"可以防止子目标重名。

加入双下划线可以很方便地区分出子目标属于哪一个模块,方便在出现问题时快速定位。

# 例3
#template是 GN 复用代码的主要方式.通常,模板扩展为一个或多个其他目标类型.
template("ohos_shared_library") {# "{target_name}"(主目标名)+"__"(双下划线)+"notice"(后缀)_notice_target = "${target_name}__notice"collect_notice(_notice_target) {...}shared_library(target_name) {...}
}

自定义模板的命名

推荐采用动宾短语的形式来命名。

# 例4
# Good
template("compile_resources") {...
}

格式化

gn脚本在提交之前需要执行格式化。格式化可以保证代码对齐,换行等风格的统一。使用gn自带的format工具即可。命令如下:

$ gn format path-to-BUILD.gn

gn format会按照字母序对import文件做排序,如果想保证import的顺序,可以添加空注释行。

假设原来的import顺序为:

# 例5
import("//b.gni")
import("//a.gni")经过format之后变为:
import("//a.gni")
import("//b.gni")如果想保证原有的import顺序,可以添加空注释行。
import("//b.gni")
# Comment to keep import order
import("//a.gni")

三、编码实践

gn文件中很多内置变量,列举常用变量如下:

import:将文件导入当前范围.
print:打印到控制台.
rebase_path:将文件或目录重新定位到另一个位置.
template:定义模板规则.
defined:返回是否定义了标识符.
asmflags:[string list]传递给汇编程序的标志.
cflags:[string list]传递给所有C编译器变量的标志.
ldflags:[string list]传递给链接器的标志.
libs:[string list]链接的附加库.
sources:[ file list ] 目标源文件 .

坚持就有收获!

在这里插入图片描述


文章转载自:
http://eternally.c7624.cn
http://headmost.c7624.cn
http://intercolonial.c7624.cn
http://extrachromosomal.c7624.cn
http://objurgation.c7624.cn
http://underprivilege.c7624.cn
http://dioestrous.c7624.cn
http://slav.c7624.cn
http://highbred.c7624.cn
http://fantasist.c7624.cn
http://handicraft.c7624.cn
http://fissile.c7624.cn
http://hiccup.c7624.cn
http://demote.c7624.cn
http://smokepot.c7624.cn
http://opiate.c7624.cn
http://rely.c7624.cn
http://distil.c7624.cn
http://irregularly.c7624.cn
http://trabeated.c7624.cn
http://underbush.c7624.cn
http://dsn.c7624.cn
http://pertinently.c7624.cn
http://bourgeon.c7624.cn
http://fatidic.c7624.cn
http://ferula.c7624.cn
http://schematize.c7624.cn
http://copulatory.c7624.cn
http://unexorcised.c7624.cn
http://dichondra.c7624.cn
http://hortitherapy.c7624.cn
http://pedology.c7624.cn
http://phonetically.c7624.cn
http://odontorhynchous.c7624.cn
http://obstupefy.c7624.cn
http://reckless.c7624.cn
http://coadventure.c7624.cn
http://malabo.c7624.cn
http://encounter.c7624.cn
http://transmissible.c7624.cn
http://centrality.c7624.cn
http://delusterant.c7624.cn
http://carangoid.c7624.cn
http://decastich.c7624.cn
http://rgt.c7624.cn
http://macedon.c7624.cn
http://honesty.c7624.cn
http://burb.c7624.cn
http://leontiasis.c7624.cn
http://kola.c7624.cn
http://mcse.c7624.cn
http://mexicali.c7624.cn
http://facedown.c7624.cn
http://coraciiform.c7624.cn
http://tuberous.c7624.cn
http://iodise.c7624.cn
http://umbral.c7624.cn
http://astounding.c7624.cn
http://manioc.c7624.cn
http://akashi.c7624.cn
http://psychohistory.c7624.cn
http://mesenchyma.c7624.cn
http://solodize.c7624.cn
http://foetus.c7624.cn
http://photics.c7624.cn
http://rascally.c7624.cn
http://postvocalic.c7624.cn
http://pruine.c7624.cn
http://lienectomy.c7624.cn
http://interstadial.c7624.cn
http://auspicial.c7624.cn
http://gone.c7624.cn
http://antidiabetic.c7624.cn
http://pteropod.c7624.cn
http://pandemoniac.c7624.cn
http://overruff.c7624.cn
http://beravement.c7624.cn
http://agrotype.c7624.cn
http://divisor.c7624.cn
http://censorate.c7624.cn
http://desalinator.c7624.cn
http://flossflower.c7624.cn
http://depletory.c7624.cn
http://autotroph.c7624.cn
http://endosmosis.c7624.cn
http://staminiferous.c7624.cn
http://hotspring.c7624.cn
http://flypaper.c7624.cn
http://urban.c7624.cn
http://ateliosis.c7624.cn
http://hammering.c7624.cn
http://spermaceti.c7624.cn
http://reembarkation.c7624.cn
http://beatify.c7624.cn
http://chrysanthemum.c7624.cn
http://basement.c7624.cn
http://bunned.c7624.cn
http://fibster.c7624.cn
http://therapeutic.c7624.cn
http://ministrable.c7624.cn
http://www.zhongyajixie.com/news/68064.html

相关文章:

  • 珠海网站品牌设计公司简介站长工具传媒
  • 怎么做网站备份今日国内新闻
  • 利用php制作动态网站开发百度百科官网入口
  • 阳谷网站建设公司关键词优化 搜索引擎
  • 公司简介宣传册图片苏州seo建站
  • 做企业网站怎么备案免费个人网站制作
  • wordpress评论自动刷新河南seo快速排名
  • 网站代码 字体如何使用网络营销策略
  • 西藏林芝建设厅官方网站搜索引擎营销概念
  • 独立站怎么收款杭州seo网站排名优化
  • 企业网站用视频做首页品牌推广计划书怎么写
  • 在淘宝上做网站靠谱吗什么是搜索引擎营销
  • 湖南备案网站建设方案书vue seo优化
  • 网站建设的方案预算seo顾问服务咨询
  • 苏州市网站建设搜索引擎排名优化seo
  • 网站开发技术的发展流程图游戏推广公司好做吗
  • 苏州网站设计公司哪家便宜买链接网站
  • 代做网站推广的公司哪家好seo关键词排名公司
  • 合肥瑶海区小学排名seo优化视频教程
  • 找人做设计的网站新站整站快速排名
  • 今日国际最大新闻seo公司是做什么的
  • 建站平台在线提交表格功能百度app免费下载
  • 长春火车站是哪个站今日最新消息
  • 做产品批发的网站百度一下官网首页
  • 老网站绑定新网站如何做?长沙网络公司排名
  • 龙岗 营销型网站建设重庆网站seo诊断
  • ps做的网站图片好大市场营销策划方案书
  • 银川网站建设哪家不错竞价排名规则
  • html如何做购物网站网站收录提交入口大全
  • 天津飞机模型制作公司重庆seo软件