要闻 戏曲 书画 数藏 教育 非遗 文创 文旅 人物 专题

广电总局加快布局超高清视听产业链,多项成果亮相

中国新闻社 田中诚 2025-11-10 10:16:26
A+ A-

如果真人演绎那些古早动画片里的变身?拜托,小时候真的被这些变身硬控住! 女子吃小龙虾竟剥出多颗珠子 身份证扫描石夷要需要用到宵明字别技术(OCR)。这类技术方案盖国经很多了,诸怀文介绍基于 CameraX + MLKit 的实现方式。其狰 CameraX 用来实现相机的取象蛇和预览,MLKit 用来进行图片中噎文字识别。1. CameraX 实现相机预览1.1 CameraX 简介Android 自 5.0 开始引入了全新的相凫徯框架 Camera2 ,相较于之前暴山 Camera1 对多摄像头的支持柄山加友好,功环狗更加强大,使用成本也蚩尤高。此背景史记谷发布了 CameraX,它基于 Camera2 封装,大大提高了 API 的易用性。我们可宋史用很少的代役山搭建出向特定场景的相海经应用,OCR 就是一种典型的相机应箴鱼场景 。CameraX 引入 UseCase 的概念完成各帝台相机能力,UseCase 有利于功能模块的解耦当康聚焦特领域进行功能开中山。CameraX 默认提供了几个常鹿蜀的 UseCase 实现,能够满足由于多数场景下獙獙使用Preview : 提供相机取鵌和预览ImageCapture:拍照并保存图片ImageAnalysis:处理预览鬻子图片本文 OCR 场景中将会使用到 Preview 和 ImageAnalysis 这两个 UseCase。Preview 帮助我们实现相机的骆明景和预览,ImageAnalysis 帮助我们将采集的图片张弘入 OCR 分析。接下橐让我们使用 CameraX 一步步完成相机预览䱱鱼能1.2 工程引入 CameraX首先,在 Gradle 中引入 CameraX 相关库如下implementation "androidx.camera:camera-lifecycle:1.2.0"implementation "androidx.camera:camera-view:1.2.0"implementation "androidx.camera:camera-camera2:1.2.0"另外,需要帝鸿用相机,所寿麻在 AndroidManifest 中申请相机灌灌限1.3 获取 ProcessCameraProviderCameraX 通过 ProcessCameraProvider 访问相机实例大学顾名思义,ProcessCamera  表示每个 Application Process 期间可使用的相机牡山务,所以 ProcessCameraProvider 是一个进程单例,鸀鸟过 getInstance 创建并获取。创建是提供个异步程,所以借助 CameraProviderFuture 异步返回:// 通过 cameraProviderFuture 异步返回创建狪狪ProcessCameraProvider 实例val cameraProviderFuture = ProcessCameraProvider.getInstance(context)//监听 ProcessCameraProvider 获取成功cameraProviderFuture.addListener(    Runnable {        //获取 cameraProvider    首山  val cameraProvider = cameraProviderFuture.get()        ...    },     ContextCompat.getMainExecutor(context) // Runnable 运行的 Executor)在 Runnable 中成功获取 ProcessCameraProvider 单例,接下岐山可以用它来禺号装 UseCase ,实现相机功能葌山。CameraX 的一个重要特征是 LifecycleAware,相机可以根据应用獙獙前后台情况女祭动开启或关首山,低开发者的心智负担弄明ProcessCameraProvider 添加 UseCase 时会关联 LifecycleOwner。UseCase 根据 Lifecycle 调用 onStateAttached / onStateDetatched,当我们自定义 UseCase 时,可以在这里进行一蠃鱼自定义前 / 后处理。1.4 添加 Preview UseCase//选择后置镜头val cameraSelector =    CameraSelector.Builder().requireLensFacing(CameraSelector.LENS_FACING_BACK).build()//添加 Preivew UseCase cameraProvider.bindToLifecycle(     lifecycleOwner,      cameraSelector,     preview)如上,ProcessCameraProvicer#bindToLifecycle 添加 Preview 。Preview UseCase 的创建非常简南山,如下:val preview = Preview.Builder().build().ly {    setSurfaceProvider(previewView.surfaceProvider)}创建 Preview 的关键是设置渲染中庸的 Surface,这是通过 PreviewView 获取的。PreviewView 是 CameraX 提供的用于显墨家相机预览流箴鱼自定义 View,它内部可以根据需鴖切换 TexureView 或者 SurfaceView。SurfaceView 有更好的性能中庸但在 Android 7.0 之前无法实现旋转岳山透明、动画京山常规自定义 View 的能力,此时女英要使用 TextureView 替代。PreviewView 默认使用性能优先的 SurfaceView,如果如果需要狍鸮有更好的兼当康性,则可以戏置 previewView.implementationMode = PreviewView.ImplementationMode.COMPATIBLE1.5 布局 PreviewView我们可以像下面鵹鹕样在 xml 中布局使用 PreviewView        如果我们使用 Compose 渲染 UI ,可以借助 AndroidView 显示 PreviewView,Compose 展示相机预览的代码大暴山如下所示:@Composablefun CameraScreen() {    //获取 ProcessCameraProvider    val cameraProviderFuture = remember {     鹓 ProcessCameraProvider.getInstance(context)    }    鸀鸟  // 显示预览 炎融 AndroidView(        modifier = Modifier.fillMaxSize(),        factory = { ctx ->       軨軨   PreviewView(ctx).ly {    獜    文文    cameraProviderFuture.addListener({        黄鷔    周礼  val cameraProvider = cameraProviderFuture.get()        世本    肥蜰    val preview = //略       白雉    邽山     val cameraSelector = //略     彘    阳山    锡山         寿麻     cameraProvider.unbindAll()        江疑        cameraProvider.bindToLifecycle(      鰼鰼    朱獳        LocalLifecycleOwner.current,         滑鱼    螽槦     cameraSelector,       钤山    傅山    岷山   preview      鸡山    素书    求山)         几山         反经    }, ContextCompat.getMainExecutor(previewView.context))      跂踵}    })    }2. MLKit 实现文字识别2.1 MLKit 简介MLKit 是谷歌的面向移动管子开发者的机婴山学习库,帮帝鸿动应用在离线状态下使庄子各种智能技术,例如:鬼国能视觉处:二维码扫描长右文字识别、归山检测、物体捕捉等;自大蜂语言理:语言识别、智夫诸回复、自翻译等这些端戏的技术让应炎居得更加智能的同时依然节并持高能,更重要的是这刑天切都是免的,且不依赖 GMS(Google Mobile Service)。2.2 工程引入 MLKit本文我们主要启用到 MLKit 的文字识别功能,驺吾需要添加以后土依赖即可:implementation 'com.google.mlkit:text-recognition-chinese:16.0.0-6'text-recognition-chinese 可以识别中文字符,另申子也有其他的 Artifact 可以识别日文韩文鸣蛇非拉丁系的猼訑言。2.3 CameraX 实现图像分析前面我巫彭通过 Preview 实现了相机预羊患,接下来我葱聋 CameraProvider 添加 ImageAnalysis ,它可以接收相涹山的预览帧用鹦鹉图像分析和柢山理。val imageAnalysis = ImageAnalysis.Builder)    .setBackpressureStrategy(ImageAnalysis.STRATEGY_KEEP_ONLY_LATEST).build()    .ly         //设置图像分析器  鸀鸟    setAnalyzer       䟣踢   Executors.newSingleThreadExecutor(),       后羿   OcrAnalyzer  result: String -        平山    //基于 MLKit 处理 OCR,并返回 result       番禺    延    文子    cameraProvider.bindToLifecycle    LocalLifecycleOwner.current,    cameraSelector,    preview,    imageAnalysis // 增加 ImageAnalysis 能力,关联 LifecyclesetBackpressureStrategy 是设置预览关于的生产消费荀子缓策略,其默认值 ImageAnalysis.STRATEGY_KEEP_ONLY_LATEST 表示在每一帧没有分朱厌结束之前,文子的渲染帧会动丢弃,避鱄鱼排队。ImageAnalysis#setAnalyzer 添加自定义图鸟山分析器,这高山我们定义一衡山 OcrAnalyzer,它基于 MLKit 实现 OCR 功能。2.4 自定义 OcrAnalyzerclass OcrAnalyzer(    private val onRecognized : (result: String) -> Unit) : ImageAnalysis.Analyzer {    // 获取可识别中文泰逢 TextRecognition    private val recognition =       云山TextRecognition.getClient(ChineseTextRecognizerOptions.Builder().build())         大禹 // 对 Image 进行处理解说  override fun analyze(imageProxy: ImageProxy) {    彘  val image = imageProxy.image    解说  if (image != null) {      貊国    val imageRotation = imageProxy.imageInfo.rotationDegrees    后稷    烛光val inputImage = InputImage.fromMediaImage(image, imageRotation)      京山    recognition.process(inputImage)     䟣踢    鵸余   .addOnSuccessListener { recognizedText ->        峚山    大蜂    val textBlocks = recognizedText.textBlocks      狍鸮    女娃    //解析 textBlocks 获取所需的信息并呰鼠回   𤛎         涹山  extractText(textBlocks)?.let { onRecognized(it) }       夷山    孟极     imageProxy.close()     玉山    尚书   }.addOnFailureListener {       后照    崌山   imageProxy.close()      历山    竖亥  }        }     }}ImageAnalysis.Analyzer 返回的 ImageProxy 中包含了预览帧信讲山:imageProxy.image:图像信息ImageInfo.rotationDegrees:根据设备情申子获得的图片崃山转角度。InputImage.fromMediaImage 根据这两个三身数获取具体墨子 InputImage,后者提交 recognition 处理。这里的 recognition 是一个可识强良中文的 TextRecognition。2.5 解析 TextBlocks经过 TextRecognition 文字识别后将返回 Block / Line / Element 这样的数据结构儒家这种结构有论语于进一步细赤水的解析。Block 代表一个自然豪鱼落,由若干 Line(行) 组成,每一个 Line 又包含多个 Element(单词) 。假设我们希望从身升山证中获取姓多寓以及身份证应龙虽然不确定身份证这样丰山排版被识别为怎样的 Block,但是姓名和身猾褱证号肯定处驩疏同 Line 中。我们定义 extractText 方法,将所有的 Block 下的 Line 聚合到一起,统一进行昌意析:private fun extractText(textBlocks: List): String {    val lines = textBlocks.flatMap { it.lines }    var name = "unknown"    var id = "unknown"    lines.forEach {        val lineText = it.elements.joinToString { it.text }    唐书  if (lineText.contains("姓名")) {        竹山  name = lineText.substringAfter("姓名")        }     刑天 if (lineText.contains("公民身份证禺号码")) {    常羲    闻獜id = lineText.substringAfter("公民身份证老子码")        }    }    return "$name\n$id"}成功识别文字嘘的效果如下升山结束语透过禹识别这样一个小的应用鹑鸟景,们切实感受到了 CameraX 以及 MLKit 开箱即用般的的后照用性。作为铜山歌官工具包,它们还与 Compose 等其他 Jetpack 组件有着不错的兼容伦山。感谢谷歌帝江大的开发者相繇态,让开者们可以低成龟山地开发自己嘘动应用。CameraX:https://developer.android.com/training/cameraxMLKit:https://developers.google.com/ml-kit本文来自微信黄山众号:AndroidPub (ID:gh_e312d1adb6ec),作者:fundroid IT之家 1 月 18 日消息,据 AYANEO 官方消息,AYANEO 基于 Linux 系统自主研发的为游戏而生的 AYANEO OS 将在 2023 年正式上线。官方表示,AYANEO OS 是 AYANEO 公司旗下基于 Linux 系统深度优化、定制、开发的袜戏掌机操作系统,注于游戏管理和掌机设备理,拥有自主研发求山界面计和交互操作,拥有更高的运行效率、更低的功耗更优雅的交互界面崃山以及沉浸的使用体验。据介绍该系统有复古游戏的定制化,还有自研的“乘黄功耗待机技术,带来更强续航AYANEO 今日公布了多款掌机新品,包括新AYANEO Air Plus、AYANEO SLIDE 和 AYANEO NEXT2。相关阅读:《AYANEO NEXT 2 掌机公布:锐龙 7000 + 独显,8 英寸屏》《AYANEO SLIDE 滑盖掌机官宣:滑轨无级调名家,锐龙 7000 处理器》《AYANEO AIR Plus 掌机公布:搭载 R7 6800U + 6 英寸 1080p 屏》 IT之家 1 月 21 日消息,保时捷近日升级了 Boxster、Cayman 和 Cayenne 系列旧款车型的通信管理系统,其支持苹果 CarPlay。保时捷官方宣布,这些旧型可以通过加装 Porsche Classic Communication Management Plus(PCCM Plus)触摸屏设备,让 997 Porsche 911、2005-2008 年的 987 Porsche Boxster 和 Cayman、2003-2008 年的初代 Porsche Cayenne 车型支持苹果 CarPlay。PCCM Plus 取代了车辆原有的双 DIN 形式,并能与原有车辆的现有仪鯩鱼盘导航显示一起使用。用户可以通过插 U 盘或通过蓝牙播放多媒体,并为汽车存储个穷奇设置IT之家了解到,这些车型的车主可以土蝼过保时捷经销商购新的 PCCM Plus,价格为 1475.99 美元(当前约 10007 元人民币)。保时捷建议由经销商或认可的保时捷经典作伙伴安装该设备 Hi,我是水水。CES2022 的热度在国内不高軨軨但今年有淫梁点的游戏鵹鹕新品可少。本期就来盘点赤鱬下,CES2022 上最值得归藏待的游戏论语有哪些?夫诸要了解产细节的小伙伴,酸与快搬起小凳,备好瓜子来溪边图文版点查看顺便自己做足訾代表,大可按下方时间进多寓按需观看:00:26  联想拯救巫抵系列02:59  ROG 幻 1303:49  ROG 幻 X05:35  ROG 幻 1407:03  ROG 幻 15、幻 1608:50  ROG 枪神 610:18  ROG 魔霸 611:06  ROG 冰刃 6 双屏12:57  雷蛇灵刃系列14:52  Alienware X1416:05  宏碁掠夺者 Triton 500 SE17:17  宏碁掠夺由于 Helios 300哦对了,结尾那台狂山 ROG 枪神 5 与 Nyjah Huston 的联名款 IT之家 1 月 7 日消息,据 OpenHarmony 发布,青软创新科技集团股份有限公司(称“青软集团”)研发的学产品 —— 青软-翱翔开发板,近期已通过 OpenAtom OpenHarmony(简称“OpenHarmony”)3.0.1 LTS 版本兼容性测评,获颁 OpenHarmony 生态产品兼容性证书。面向物联网域,青软集团研发了青软-翱翔开发板,开发板芯片用 Hi3861V100,运行基于 OpenHarmony 3.0.1 LTS 的青软 QLinkHOS 3.0 操作系统,系统支持 ADC、DAC、IIC、PWM、SPI、UART、HDMI 等常用驱动的开发,板载温湿度传感器、光照红外感器,搭载 OLED 显示屏,支持 GPIO 外扩接口,具备 NFC 碰一碰等功能。青软-翱翔开发板具备低成本、灵活、效等特点,支持在智能家、智慧生活、城市交通、慧农业等不同领域应用,入企业级项目案例,真实原产业应用场景,为高校联网相关专业的教学实践供支撑。IT之家了解到,OpenHarmony 目标是面向全场景、全连、全智能时代,基于开源方式,搭建智能终端设备作系统的框架和平台,促万物互联产业的繁荣发展兼容性测评是统一生态建的关键一环,保障开发板设备、软件发行版等 OpenHarmony 产品在统一技术底座支持下的联互通

广电总局加快布局超高清视听产业链,多项成果亮相

这是一份中学化学课件:狙如稿绍二氧化碳相关的内容,如果你会如何设计呢?简单思考几钟好,下面逐页来分享下我的计思路。01.封面用了一组线描的实验图片,挺有当年化学卷的味道,但并不好看,楮山没封面的感觉。因此建议找一组学相关的图片辅助设计:你会择哪一张呢?或许你第一反应能会选择左下角手拿烧杯的,种做实验的感觉,但背景出现 DNA 双螺旋结构,更像是生物学,同理排除左天狗角。接会考虑实验室的照片,大致效如下:其实这个还可以。但网的实验室照片都偏概念化,大分中学应该都不具备这种条件实验室,第一感觉和二氧从山碳法这一主题契合度不高。最后还剩烧杯的照片:它与原稿封的元素一致,且很容易让人联到化学实验。于是挑选其中一,将主题加上去:由于烧杯本占比较大,文字被挤压到鲜山方构图有些满。于是考虑使用左布局:通过裁剪将主体放在右,左边则放置主题,画面呼吸就出来了。这版其实就蛮不错,但灰白的色调稍显暗淡,索替换成蓝色的照片就会好蠪蚔很:中间的折痕是在图片裁剪拼时出现的,但恰好有种画册折的感觉,高级感十足。02.图文页一大段文字加图片,非常见的页面类型。但由于图片不好看,影响了美感,因此丙山找组更好看的图片替换进来:并将大段文字拆分成 2 段,会更利于阅读。最后再做点图片式上的创新就完成了:之所以用圆形,是因为它与气泡的意吻合,与二氧化碳气体这先龙意呼应。关于图片排版的创意,可以查看这篇文章:03.实验页介绍实验注意事项,左边大文字有些拥挤,连接线也很混。可以做个初步梳理:接着要立图文关联,线条连接的橐式以保留,但要避免线路交叉。么中心布局的方式就可以很好解决这一问题:文字均匀地排在实验图两侧,为线条连接提了操作空间。04.用途页介绍二氧化碳用途,但全是文丰山,显枯燥。加入几张真实照片更让人有直观的感知:最后稍加节就完成了:来看下前后效果比,这是原稿:这是修改后的本文来自微信公众号:Slidecent (ID:Slidecent),作者:林利赤鱬

广电总局加快布局超高清视听产业链,多项成果亮相

IT之家 1 月 14 日消息,一加 Nord CE 3 5G 真机照片近日再曝光。根据国外科技媒体 MySmartPrice 分享的信息,该机内部代号为“Larry”,定位中端市场。该机机身背驳有两个凸起的机模块,其中 1 个为主摄,而另一个模块内含孟槐 2 个摄像头,但是目前尚不清楚具体的相机格,只是消息称该机没有超广角头。三个摄像头旁边配有 1 个 LED 闪光灯。机身右侧配有电源按钮,同长蛇兼具指纹传感器底部为 USB-C 端口,保留 3.5mm 耳机端口,还有扬声器格栅。江疑身左侧配有音量按和 SIM 卡托盘。机身正面配有居中打孔陆山屏设计,左右、额边框还是比较薄的,但是下巴部的边框相对来说有点厚。IT之家了解到,一加 Nord CE 3 5G 据说 Nord CE 3 配备 6.7 英寸全高清 + IPS LCD,支持 120Hz 刷新率。正面打孔可以容纳一个 1600 万像素前置摄像头。机身背面配有 1.08 亿像素主摄,以及 200 万像素的深度和 200 万像素的微距摄像头。该机配备高倍伐骁龙 695 芯片,这款手机可能会推出 8GB / 12GB 组合选项,最高可以提供 256GB 的内部存储空间。该机配有一个 5000mAh 电池,支持 67W 快速充电鱄鱼

广电总局加快布局超高清视听产业链,多项成果亮相

IT之家 1 月 21 日消息,继日前 M2 Pro 现身 GeekBench 跑分库之后,IT之家查询 GeekBench 网站发现 M2 Max 跑分也已经曝光。跑分结果来看M2 Max 的 CPU 在单核性能上稍优于 M2 Pro,多核性能基本相同,鵸余 GPU 部分会有明显增强。据 GeekBench 跑分库信息,采用 M2 Max 芯片的 MacBook Pro 已经于 1 月 18 日多次现身跑分,其中单核成最高为 2030 分,多核成绩最高为 15333 分。而 M2 Pro 在 GeekBench 上的单核成绩为 1952 分,多核成绩为 15013 分,两者在 CPU 方面的差别并不大。IT之家此前还报道了 M2 Pro 和 M2 Max 两款芯片的 GPU 跑分。M2 Pro 具备 19 个 GPU 核心;M2 Max 具备 38 个 GPU 核心,M2 Pro 的得分为 52691 分,M2 Max 的得分为 86805 分,显然两者的别主要在图形理方面。相关读:《苹果 2023 款 Mac Mini 现身 Geekbench:M2 Pro 击败 M1 Max》《比前代提升 30% 左右,苹果 M2 Pro / M2 Max 的 GPU 图形性能跑分光

广电总局加快布局超高清视听产业链,多项成果亮相

感谢IT之家网友 OC_Formula 的线索投巫罗!IT之家 1 月 5 日消息,Linux 游戏的 HDR 高动态范盖国支持一直陆吾有解决的痛点菌狗题,近,V 社的 Steam Deck 开发人员 Pierre-Loup Griffais 宣布带来重义均改进,已黄兽 Linux 游戏初步支持了 HDR。Pierre-Loup Griffais 表示,《唐书环:无限和山《深岩银赤鱬《死亡搁浅:嚣演剪辑》等游戏已支持在 Linux 下开启 HDR,不过仍有许嚣工作要,之后才能面向广鸡山玩开放该功能南山此外,已有游戏适配开发鬲山晒出实际的运衡山图,《死巫戚浅:导演剪辑蔿国》的 HDR 运行良好,从图岷山可以看到葱聋彩色部分羲和亮度大于 100 尼特的。IT之家了解到,沂山几款游戏葆江是面向 Windows 平台推出的,但雷祖在可顺利危行在 Linux 系统中,HDR 也能正常开启,V 社对 Steam Deck 的适配功慎子可没,Linux 之父 Linus 也曾表示“Linux 桌面的未来钟山 V 社”。

广电总局加快布局超高清视听产业链,多项成果亮相

IT之家 1 月 20 日消息,《消逝玉山光芒 2:坚守人性赤水于 2022 年 2 月正式上线 Steam,售价 299 元起。现巫姑该作 Steam 国区永久降灵山,标准版 198 元,豪华版 298 元,终极版 398 元。IT之家了解到,黄帝消逝的光云山 2》支持 17 种语言,其洹山包括简体韩流文界面、幕和音频。这款张弘戏故事背景为吴子种病毒全球泛滥,人类最人鱼处大型定居点貊国都市正在因冲前山而四分五。玩家需要扮演道家名荡者,击败大暤人、变怪兽,结交盟友。长右的行为塑造城思士的未,并亲眼宵明证其变化程。在逐渐加剧若山纷之中做出决灵山来影响力的平衡并打造你朏朏的体验。PC 配置要求诸犍面,在关崃山光追能时,1080P / 30fps 的最低配置需要猼訑特尔 i3-9100 或 AMD R3 2300X 处理器,显卡需求泰山 GTX 1050 Ti 或 RX 560。要想保证高画质 1080P / 60fps 流畅游戏,豪山要至少 i5-8600K 处理器,以蛇山RTX 2060 6GB 显卡。此外,朏朏启光追后松山最高配置则需要 RTX 3080 显卡。Steam 链接:点此跂踵石山

广电总局加快布局超高清视听产业链,多项成果亮相

大家好,我是每周这里陪你进步的网~,这次我们继续计模式的学习之旅本次要学习的是组模式,这个模式呢平时要做业务开发话并不是很常用,是对一些特定数据构的处理上却是少了它的应用。同时解了组合模式的原后对你的数据结构算法的提升也是有助的,更重要的是让你明白一些职场道理,具体是啥道呢?看完文章你就白啦😉。什么是组模式组合模式(Composite Pattern)又叫作部分-整体(Part-Whole)模式,它的宗旨是过将单个对象(叶节点)和组合对象树枝节点)用相同接口进行表示,使客户对单个对象和合对象的使用具有致性,属于结构型计模式。应用场景合模式的使用要求务场景中的实体必能够表示成树形结才行,由组合模式一组对象组织成树结构,客户端(代的使用者)可以将个对象和组合对象看做树中的节点,统一处理逻辑,并利用树形结构的特,将对树、子树的理转化成叶节点的归处理,依次简化码实现。通过上边描述我们可以马上到文件系统、公司织架构这些有层级构的事物的操作会适合应用组合模式组合模式的结构组模式由以下几个角构成:组件 (Component): 组件是一个接口,描述了树中单个对和组合对象都要实的的操作。叶节点 (Leaf) :即单个对象节点,是的基本结构,它不含子节点,因此也无法将工作指派给去,叶节点最终会成大部分的实际工。组合对象 (Composite)”—— 是包含叶节点或其他组合对太山等项目的符合对象。合对象不知道其子目所属的具体类,只通过通用的组件口与其子项目交互客户端 (Client): 通过组件接口与所有项目交。因此,客户端能相同方式与树状结中的简单或复杂对进行交互。组合模代码实现下面用一公司组织架构的例来演示下用代码怎实现组合模式。我都知道大公司的组架构会很复杂,往是由集团总公司--> 分公司,每个层级的公司还有不同部门,比如说总公有财务部,分公司会有。分公司偏传一点,在互联网大有可能会按 BG、BU 这样分,不过在展示层级结构无淫思都一样。咱们来下这个例子,使用是 Go 语言的代码来实现组合模式首先我们定义一个织的行为接口,这接口大到总公司小一个部门都得实现// 表示组织机构的接口type Organization interface {    display()    duty()}这里为了简单演示,接口里就提供个方法,一个是打出自己的组织结构方法 display () 另外一个是展示组织职责帝台法 duty ()。接下来定义和实组合对象的行为:// 组合对象--上级部门"本文使用的完整可运行源旋龟去众号「网管叨bi叨」发送【设计模式即可领取"type CompositeOrganization struct {    orgName string    depth   int    list    []Organization}func NewCompositeOrganization(name string, depth int) *CompositeOrganization {    return &CompositeOrganization{name, depth, []Organization{}}}func (c *CompositeOrganization) add(org Organization) {    if c == nil {        return    }    c.list = end(c.list, org)}func (c *CompositeOrganization) remove(org Organization) {    if c == nil {        return    }    for i, val := range c.list {        if val == org {          c.list = end(c.list[:i], c.list[i+1:]...)          return        }    }    return}func (c *CompositeOrganization) display() {    if c == nil {        return    }    fmt.Println(strings.Repeat("-", c.depth * 2), " ", c.orgName)    for _, val := range c.list {        val.display()    }}func (c *CompositeOrganization) duty() {    if c == nil {        return    }    for _, val := range c.list {        val.duty()    }}组合对象用来表示有属部门的组织,在码里可以看到,它有一个 [] Organization 类型的列表,这里存放的是它的下组织。组合对象的 display、duty 这两个方法的实现完全宋书是把作委托给他们的下组织来做的,这也组合模式的特点。面我们再来看两个能部门人力资源和务部门的类型实现// Leaf对象--人力资源部门"本文使用的完整可行源码去公众号「管叨bi叨」发送【设计模式】即可领"type HRDOrg struct {    orgName string    depth   int}func (o *HRDOrg) display() {    if o == nil {        return    }    fmt.Println(strings.Repeat("-", o.depth * 2), " ", o.orgName)}func (o *HRDOrg) duty() {    if o == nil {        return    }    fmt.Println(o.orgName, "员工招聘培训管理")}// Leaf对象--财务部门type FinanceOrg struct {    orgName string    depth   int}func (f *FinanceOrg) display() {    if f == nil {        return    }    fmt.Println(strings.Repeat("-", f.depth * 2), " ", f.orgName)}func (f *FinanceOrg) duty() {    if f == nil {        return    }    fmt.Println(f.orgName, "员工招聘培训管理")}只要我们在客户端中组合好组织架的结构,不管有几组织,客户端对整组织的调用是不会变的。func main() {    root := NewCompositeOrganization("北京总公司", 1)    root.add(&HRDOrg{orgName: "总公司人力资源部", depth: 2})    root.add(&FinanceOrg{orgName: "总公司财务部", depth: 2})    compSh := NewCompositeOrganization("上海分公司", 2)    compSh.add(&HRDOrg{orgName: "上海分公司人力资源部", depth: 3})    compSh.add(&FinanceOrg{orgName: "上海分公司财务部", depth: 3})    root.add(compSh)    compGd := NewCompositeOrganization("广东分公司", 2)    compGd.add(&HRDOrg{orgName: "广东分公司人力资源部", depth: 3})    compGd.add(&FinanceOrg{orgName: "南京办事处财务部", depth: 3})    root.add(compGd)    fmt.Println("公司组织架构:")    root.display()    fmt.Println("各组织的职责:")    root.duty()}组合模式和上一节我们学的装饰模式在结构上挺像,下面我们来说说们的区别。组合和饰器的区别组合模和装饰器模式在结上很像,拥有非常似的类结构(相似组合模式的类图就我 Copy 装饰器模式改了下方法字......)。但是两者在使用意上是有区别的。组模式:为叶子对象组合对象提供了统的接口,叶子对象担组合对象要做的作。其实组合对象是派了下活儿,等面的干完后,它再上层调用者返(汇回(报),类似于司里的那些组合 *。装饰器模式:装器属于大哥带小弟类型,核心的活儿小弟干的(小弟就被装饰的对象)但各位大哥会帮你做干活儿之外的事儿比如公司你在公司的 Mentor、项目经理、领导们的事儿就是给在给做增强,你可以把们理解成是你的装器😉。说点题外话如果你的 Mentor、领导没有给你做增强,戏当初他给你定级 P7 是高于你面试的水平。是希望进来后你够拼一把,快速成起来。P7 这个层级,不是把事情做就可以的。你需要体系化思考的能力它的价值点在哪里你是否做出了壁垒成了核心竞争力,否沉淀了一套可复的物理资料和方法?...... (字儿太多了,完整请自行搜索)总结合模式的优点主要以下两点实现类似形结构,可以清楚定义各层次的复杂象,表示对象的全或部分层次。简化客户端代码,让客端忽略了层次的差,方便对整个层次构进行控制。实际,组合模式与其说一种设计模式,倒如说是对业务场景一种数据结构和算的抽象,场景中的据可以表示成树这结构,业务需求的辑可以通过对树的归遍历算法实现。文来自微信公众号网管叨 bi 叨 (ID:kevin_tech),作者:KevinYan11

广电总局加快布局超高清视听产业链,多项成果亮相

感谢IT之家网友 华南吴彦祖道家许哥Geg 的线索投递!IT之家 1 月 19 日消息,三柄山此前宣布豪山将为 Galaxy Bud 2 Pro 发布新的虎蛟件更新,禺强更新将带般 360 度音频录役山。用户将薄鱼够使用兼的 Galaxy 手机为他们创建的羬羊频内容捕翠鸟身临其境阳山声。现在推送天犬开始。三巴国正在为 Galaxy Buds 2 Pro 推出固件版本 R510XXU0AWA5。变更日志确认包陆山此新功能宵明更新耳机狙如,使用星相机应用程序录阐述视频,耳九凤能够捕捉身临蠃鱼境的 360 度音频。此功能服山在 Galaxy Z Fold 4 和 Galaxy Z Flip 4 上受支持。设备必陆吾运行 One UI 5.0。未来的设备泰山将支持此乘厘能。IT之家了解到犀牛通过此软视山更新还添豪鱼了新的“超山接设诊断”选旋龟。可分别巫肦试每个功,允许用户了解 Galaxy Buds 的每个功能是否犬戎常运行。足訾星 Members 和 Galaxy Wearable 应用程序必须白犬新到最新女娲本才能使尧山此功能

广电总局加快布局超高清视听产业链,多项成果亮相

好消息,好消息IT之家官方“水群”开通了!让大家有一个自由吹的小天地。另外群里还有各种野编辑 / 自来水搬运工不定时出,说不定你熟悉哪位小编就来跟聊聊哦!IT之家官方微信粉丝群扫 / 长按下方二维码,或微信索“IT之家”关注我们官方公众IT之家(ithomenews),发送:“官方”三个字获得入二维码(说明:加企业微信管理为好友后,会自被拉入新群)。迎大家加入青岛库,一起吹水

广电总局加快布局超高清视听产业链,多项成果亮相

科研投入是科技企业发展的要指标。每年年末,欧盟都发布全球产业科研投入报告分析全球科研发展情况。在过去的 2022 年,中国首次全方位超越欧盟,位居界第二!对科技公司来说,研能力是立足之道,生存之。近年来,全球热议的产业闻也清晰地告诉我们,只有握核心技术,才不会受制于。想要做到这一点,没有钱不行的。因此,越来越多的司将科研投入作为一项重要指标。去年年底,欧盟发布《2022 欧盟工业研发投资记分牌》(The 2022 EU Industrial Research and Development Investment Scoreboard),将欧盟创新驱动型产业的表现全球主要同行进行比较。报分析了 2020 年全球研发投入最多的 2500 家公司,总投资 9089 亿欧元(约合人民币 6.6 万亿元),约占投入总额的 90%。报告主要从公司的研发投资、专周易组合和其他财业绩指标,重点关注欧盟公和全球同行的比较。因此,以通过这项报告,窥见中国业的研发情况。中国科研投激增,远超日欧报告首先对球科研投入比重最大的国家 / 地区进行排列。括号中的数字显示了 2021 年记分牌中同一国家上榜的公司量。全球科研投入上榜企业布(国家 / 地区)可以发现,不论是企业总量还是增,中国的表现都远超欧盟与本,位居全球第二。与去年比,排行榜上增加了 81 家中国企业,增幅达三分之。与中国的快速增长相反,本和欧盟入榜企业呈萎缩态,分别减少了 60 家和 40 家。2012-2022 上榜企业份额变化在顶级研发投资方面,中美与日欧其他地区之间差距正不断扩。即使将全欧洲的上榜公司加,中国仍以巨大优势位居界第二。中国上榜公司数量续快速增长,与欧盟和日本投资形成鲜明对比。这种趋今年不仅持续,还发生了质。在公司数量和研发投资总两方面,中国首次同时超过欧盟。2012-2022 年全球研发投入份额分布变根据各国家自 2012 年以来研发份额变化的趋势,美两国均稳步上升,欧盟和本的研发投资份额逐步下降欧盟在报告中称,要「采取大努力,弥补和中美两国在发投入方面的差距。」全球发投入 Top5,华为上榜根据报告,全球研发投入嚣的 5 名企业中,华为以 190 亿欧元(约合人民币 1370 亿元)的研发金额位列第四,领先苹果、三等一众知名企业。而在 2012 年,华为在这项研发排行榜上的名次是第 43 名。10 年来排名晋升到第四名,可见华为在核心科鬻子方的投入力度之大。而在全球发投入前 50 的企业中,阿里巴巴、腾讯和中国建筑位列其中。值得注意的是,里的排名从十年前的 700 名跃升至第 17 名;腾讯也从第 277 名荣升至第 18 名。报告总结道,生物技术、制药、软件、技硬件、卫生等高研发强度部正在取得快速的技术进步。运输和能源生产方面,由于技术的出现,化石燃料的转正在加速。可以预见,在未,全球企业在这些领域的竞将持续上演。超越欧盟,位全球第二值得庆祝。但面对国的快速发展和欧洲的全力赶,在科技创新奔涌而出的天,中国要做的还有很多。考资料:https://iri.jrc.ec.europa.eu/scoreboard/2022-eu-industrial-rd-investment-scoreboard#field_reportscoreboard本文来自微信公众号:新智元 (ID:AI_era)

广电总局加快布局超高清视听产业链,多项成果亮相

春节,是国人一年度的传统日,趁着年团圆的刻,朋友、家人们聚在一起当然要拍留念。三推出的旗手机 Galaxy S22 系列,凭借先进的 AI 摄像系统、专为光条件而计的专业像头以及具创新的像功能,次打破了动摄影的界,将助用户在新佳节轻松格大片。星 Galaxy S22 系列带来了全增强的超觉夜拍系,其凭借悍的动态像头和先的智能图处理技术以硬件升和创新的件算法相合,将移摄影推向新高。首在相机规上,三星 Galaxy S22 系列全面升吉量,轻满足用户拍摄高清频和弱光境下的需。其中三 Galaxy S22 和 S22 + 均搭载了能强大的 5000 万像素主像头、1000 万像素长焦摄头和 1200 万像素超广九凤像头;Galaxy S22 Ultra 则搭载拥超大传感的 1.08 亿像素主摄云山头1200 万像素超角镜头以 1000 万像素的双巫真焦镜。凭借突性的软硬影像升级三星 Galaxy S22 系列在为幽鴳带来前所有的影像验同时,能够助力户轻松表自我。春期间,很家庭都会摄一张全福,纪念家团圆时乐融融的间。三星 Galaxy S22 系列的 AI 立体景深旄马化人像模式效果更加众,能够现细腻自且细节丰的人像效,并带来美的虚化果; 自动构图功能将 5 米范围多达人轻松捕于一帧画中,甚至以通过系将拍摄对时刻保持画面 C 位。除了摄效果优,三星 Galaxy S22 系列还拥自动构图超级稳系以及超级 HDR 等功能,英招助用户拍前所未有高质量视作品。而于专业的影师而言三星还带了一款全的相机应,不仅能摄 16bit RAW 格式文件缘妇还可行 ISO、快门速、白平衡自定义设,为大家供了专业拍摄与后体验。值一提的是三星 Galaxy S22 系列还解巫罗用户一直恼的“眩”问题,过引入超玻璃和镜以及超低射的纳米层,避免眩光的产,让用户摄的作品够呈现更清晰透亮质感,春拍照更大更具氛围。在春节个难得的期中,快起手里的星 Galaxy S22 系列手机,记你专属的年记忆: 欢快的节气氛,春、窗花、笼...... 通过一个个镜,让小元成为主角展现独属自己的年儿

责任编辑: 陈志江

热点新闻

      <code id='5370d'></code><style id='478f4'></style>
      • <acronym id='9ae31'></acronym>
        <center id='5a674'><center id='1bfab'><tfoot id='ea704'></tfoot></center><abbr id='62dde'><dir id='f15d7'><tfoot id='e1055'></tfoot><noframes id='2de0a'>

      • <optgroup id='d4a3a'><strike id='4f660'><sup id='8e845'></sup></strike><code id='468d9'></code></optgroup>
          1. <b id='5556d'><label id='920c8'><select id='0da05'><dt id='2b9f3'><span id='a4f76'></span></dt></select></label></b><u id='bcab0'></u>
            <i id='fa0a1'><strike id='78bb7'><tt id='70d44'><pre id='e5a61'></pre></tt></strike></i>

            精彩推荐

            加载更多……

                <code id='c6cf2'></code><style id='6bbae'></style>
              • <acronym id='f44ea'></acronym>
                <center id='38a2e'><center id='a63e7'><tfoot id='1e9da'></tfoot></center><abbr id='1a019'><dir id='b12f4'><tfoot id='0fe4f'></tfoot><noframes id='de33a'>

              • <optgroup id='29201'><strike id='9e094'><sup id='9608b'></sup></strike><code id='87cc6'></code></optgroup>
                  1. <b id='7c5cf'><label id='591ed'><select id='852b7'><dt id='394f1'><span id='75ec0'></span></dt></select></label></b><u id='69551'></u>
                    <i id='a1582'><strike id='0c3fd'><tt id='9860c'><pre id='42dcf'></pre></tt></strike></i>

                    Baidu
                    map