- 探索企业级智能对话:ChatGPT + 企业数据 (C) 开源项目推荐
芮川琨Jack
探索企业级智能对话:ChatGPT+企业数据(C#)开源项目推荐azure-search-openai-demo-csharpAsampleappfortheRetrieval-AugmentedGenerationpatternrunninginAzure,usingAzureCognitiveSearchforretrievalandAzureOpenAIlargelanguagemodels
- rknn环境搭建之docker篇
wyw0000
rknn人脸识别机器学习docker容器运维ai
目录1.rknn简介2.环境搭建2.1下载RKNN-Toolkit2仓库2.2下载RKNNModelZoo仓库2.3下载交叉编译器2.4下载Docker镜像2.5下载ndk2.5加载docker镜像2.6dockerrun命令创建并运行RKNNToolkit2容器2.7安装cmake3.模型转换3.1下载模型3.2模型转换4.编译c++demo5.推送到板端运行1.rknn简介RKNN是由瑞芯微电
- DragControls拖拽插件优化:从指定平面到任意平面
现状:Threejs官方demo提供了DragControls.js平面拖拽控件,但只能拖拽Object在垂直于相机法线的平面上移动目标场景:在六面体空间盒子中沿着六面体平面拖拽物体,并且需要限制在盒子内部已知:空间盒子大小,对象所在的平面方案设计:将Object拖拽依赖的信息放在userData中,示例如下基于拖拽控件,改造部分关键代码,实现目标//模型对象部分参数{//...userData:
- 【如何在seismic unix中生成su文件】
南瓜胖胖
SUseismicunixmac
复制一下代码,重命名为makeing_data.sh.给该程序赋予可执行权限chmod+xmakeing_datat.sh#makingdata#!/bin/sh#makedataforNMOdemo,goesintofile:modeldata#Notethatsincedsx=dgx,fullfoldisatmost32(NOT64),#butinthisquickdemowehaveonly
- 探索WPF世界之门 - WpfDemo开源项目深度解析
孔帆贝
探索WPF世界之门-WpfDemo开源项目深度解析【下载地址】WPF示例项目下载本仓库提供了一个名为`WpfDemo.zip`的资源文件下载。该文件是一个WPF(WindowsPresentationFoundation)示例项目的压缩包,旨在帮助开发者快速了解和学习WPF开发技术项目地址:https://gitcode.com/open-source-toolkit/67d6a项目介绍在数字时代
- python~http的请求参数中携带map
~kiss~
pythonpythonhttp开发语言
背景调试httpGET请求的map参数,链路携带参数一直有问题,最终采用如下方式携带map解决user={"demo":"true","info":"王者"}urlencode之后的效果如下所示user=%7B%22demo%22:%22true%22,%22info%22:%22%E7%8E%8B%E8%80%85%22%7D最终http的url如下:http://www.demo.com?us
- Java 登录框架
zerolbsony
springbootjava后端
Java框架中常用的几种成熟的token生成框架对比-白露~-博客园SpringBoot整合sa-token,jwt登录及拦截器鉴权Demo_只有在集成sa-token-jwt插件后才可以使用extra扩展参数-CSDN博客推荐一款轻量级权限认证框架Sa-Token,集成JWT和Redis轻松实现认证鉴权_sa-tokenjwt-CSDN博客SpringBoot整合sa-token,jwt登录及拦
- Python 框架学习 Django篇 (六) 数据表关联_django orm 的 __ 链表,使用什么链接方式
2401_86372470
python学习django
表之间以对多的关系就是数据库中的“外键”,下面我们举个例子,比如一个医药系统中肯定会有客户的信息吧,我们先定义一个客户的基本信息(客户名称、联系电话、居住地址)viDjango_demo/paas/models.pyclassCustomer(models.Model):#客户名称name=models.CharField(max_length=200)#联系电话phonenumber=model
- Python各类图形绘制—turtle与Matplotlib-29、计算两个圆相交部分面积
Math_teacher_fan
Python基础图形绘制pythonmatplotlib开发语言笔记人工智能
Python各类图形绘制—turtle与Matplotlib-29、计算两个圆相交部分面积目录Python各类图形绘制—turtle与Matplotlib-29、计算两个圆相交部分面积前言开发环境turtle_demoMatplotlib_demo前言既然是学习数学,肯定会离不开各种图形,之前的文章中很多我都尽可能的不使用图来表示了,但是觉得不好,毕竟数学离开了图就会很抽象,所以我们这里单独的学习
- Java集合并发安全面试题
夜游猿
JavaJava开发工程师面试java安全windows
Java集合并发安全面试题同步包装器Q1:Collections的同步包装器是如何实现线程安全的?publicclassSynchronizedWrapperExample{//1.基本使用publicvoiddemonstrateSynchronizedCollections(){//创建同步ListListsyncList=Collections.synchronizedList(newArr
- JavaAPI(lambda表达式、流式编程)
NGC2237999
java算法开发语言
Lambda表达式本质上就是匿名内部类的简写方式(匿名内部类见:JAVA面向对象3(抽象类、接口、内部类、枚举)-CSDN博客)该表达式只能作用于函数式接口,函数式接口就是只有一个抽象方法的接口。可以使用注解@FunctionalInterface来验证publicclassLambdaDemo01{publicstaticvoidmain(String[]args){//InterAx=(int
- 前端demo: 前端图片预览组件Viewer.js组件封装
Bee.Bee.
前端demo前端javascriptjquery
1.简介Viewer.js是一款强大的图片查看器。我们通过Viewer.js在页面上添加强大的图片查看功能,同时,这款优秀的插件配置操作起来也非常的方便下载地址:GitHub-fengyuanchen/viewerjs:JavaScriptimageviewer.2.支持的功能支持53个选项支持23种方法支持17个事件支持模态和内联模式支持触摸支持移动支持缩放支持旋转支持缩放(翻转)支持键盘跨浏览
- IntelliJ IDEA配置 tomcat
太阳上的雨天
JAVAjavaidea
创建测试项目HttpServletDemo打开IDEA新建一个maven项目,按图中选择之后,点击下一步填写项目名字,位置,Groupid,点击下一步配置Maven的相关目录配置tomcat
- live2d + edge-tts 优雅的实现数字人讲话 ~
RoronoaV587
python人工智能文本转语音数字人live2d
震惊!live2d数字人竟开口说话~之前有想做数字人相关项目,查了一些方案。看了一些三方大厂的商用方案,口型有点尴尬,而且很多是采用视频流的方案,对流量的消耗很大。后来了解了live2d技术,常在博客网页上见到的看板娘就是live2d技术实现的~说下demo的技术实现,核心采用live2d的模型[含有开口说话的动作]+文本转语音接口1、文本转语音接口这个接口采用前面分享过的edge-tts项目基于
- 基于Spring Boot 2.0.2版本——Eureka的使用
huaseven0703
springbooteurekaspingboot2.0.2
Eureka简介在SpringCloud微服务中,Eureka作为服务注册中心,其作用在于对于各个微服务提供注册并发送心跳检测,每个客户端都可以在服务器上面做声明注册,调用……注:文中带有底色的文字部分为重点改动区域一.springboot中创建Eureka1.pom.xml4.0.0com.mazh.eurakamyeuraka0.0.1-SNAPSHOTjarmyeurakaDemoproje
- ChatGLM-6B中英双语对话大模型Windows本地部署实战
ErbaoLiu
数据分析&大模型自然语言处理&大模型机器学习&大模型ChatGLMChatGLM-6B中英双语对话语言模型LLM大模型GPT聊天机器人
目录智谱清言ChatGLM简介ChatGLM下载硬件需求Conda环境下载代码下载模型部署测试网页版Demo命令行DemoAPI方式部署低成本部署智谱清言智谱清言是北京智谱华章科技有限公司研发的大模型。智谱AI致力于打造新一代认知智能大模型,专注于做大模型的中国创新。公司于2020年底研发GLM预训练架构,2021年训练完成百亿参数模型GLM-10B,利用MoE架构成功训练出收敛的万亿稀疏模型,2
- public or static包下的 html 丢了(404)? 你快回来! 我一人承受不来
barcke
html前端java学习spring
没想到吧,我把html还是放到了jar包中~环境:SpringBoot版本2.XJava版本1.8.0及以上问题:publicorstatic包下的html丢了(404)?话不多说先上图我的目录结构是这样的src└──main└──java└──com└──example└──demo└──DemoApplication.java└──resources└──public├──css│└──mai
- 使用spring-boot-starter-test做单元测试简单示例
Leo_Hu666
javaspringboot单元测试
一、jar依赖org.springframework.bootspring-boot-starter-testtest二、demo示例**@SpringBootTest**publicclassTest{//要引入的Bean使用@Autowired注入//在要测试的方法上添加@org.junit.Test注释**@org.junit.Test**publicvoidtest(){System.ou
- 36氪访谈李彦宏:文心一言扩展百度搜索边界
人工智能chatgpt百度
36氪在文心一言发布会几天后,简短的采访了百度CEO李彦宏先生,下面是采访的简要核心内容问题:一个突然的采访中是否会让人感到有压力回答:不会,因为他们已经做好了准备问题:为什么发布一个未完美的产品回答:市场需求是主要原因,同时也需要有用户的反馈来提升产品的能力问题:为什么在发布会上使用demo而不是实时演示回答:生成式AI每次给出的答案不一定总是一样的,不确定性会影响整个发布会的效果;而且全球所有
- React 探秘(四):手撸 mini-react
家里有蜘蛛
react.js前端前端框架
文章目录背景实现能力手撸开始demo流程拆解实现render函数构建fiber树处理工作单元实现createfiber加入difffiber的逻辑commit阶段hooks实现源码地址参考文章背景前文中学习了react中核心的fiber架构,时间切片,双缓存等,接下来这篇文章实操实现一个mini-react,巩固我们学习的这些知识。React探秘(一):fiber架构React探秘(二):双缓存技
- face-api.js人脸的简单使用案例
湫化椿雨
javascript开发语言
一、安装npmiface-api.js二、把模型下载放到public文件夹下文件为models里(public/models·TsMask/face-api-demo-vue-码云-开源中国(gitee.com))当前人流量:{{peopleCount}}import*asfaceapifrom'face-api.js'console.log('98',faceapi.nets.faceRecog
- SpringBoot WebSocket连接报 no mapping for GET
lijiabin417
框架和工具websocketspringbootjavanginx
一、问题描述一次websocket连接调试中,触发了nomappingforGET异常,检查连接路径后未发现问题;二、问题解决2.1检查websocket注解@ServerEndpoint("/path")@ComponentpublicclassWebsocketDemoServer{}2.2websocket相关配置补充@ConfigurationpublicclassWebsocketCon
- 前端排序算法完全指南:从理论到实践
念九_ysl
算法javascript开发语言ecmascript算法
前端排序算法终极指南.container{max-width:1000px;margin:0auto;padding:20px;}.demo-container{margin:30px0;border:1pxsolid#eee;padding:20px;}.bars-wrapper{height:200px;display:flex;align-items:flex-end;gap:2px;mar
- Selenium+OpenCV处理滑块验证问题
刽子手发艺
志愿填报项目seleniumopencvwebpack
两个文件的主要目的是通过Selenium、ChromeDriver和OpenCV来实现自动化解决滑块验证码的问题。滑块验证码通常要求用户拖动一个滑块到正确的位置,以验证用户是否为真人。下面我将详细讲解这两个文件的工作流程和具体功能的原理。1.cvdemo.java文件这个文件主要包含了一个使用OpenCV进行图像处理的方法getPos,用于检测滑块图像中目标区域的位置。1.1工作流程加载OpenC
- Ansible PlayBook的中清单变量优先级分析及清单变量如何分离总结
山河已无恙
Ansible/AWX高级特性教程linuxansible
写在前面嗯,学习Ansible高级特性,整理这部分笔记博文内容涉及Ansibleploybook中变量定义的基本原则不同位置定义变量的优先级Demo如何实现变量和清单解耦食用方式:大量Demo,所以适合收藏温习查阅变量优先级需要有ansible基础了解角色剧本基本结构能够使用Ansible解决实际问题理解不足小伙伴帮忙指正傍晚时分,你坐在屋檐下,看着天慢慢地黑下去,心里寂寞而凄凉,感到自己的生命被
- 041集——选取若干点生成三角网(CAD—C#二次开发入门)
山水CAD筑梦人
CADC#二次开发c#数据库java
随机生成2000个三维点并生成三角网,效果如下:随机生成20个点,效果如下:附部分代码如下:publicclassNTS三角网{publicstaticintnumPoints=20;[CommandMethod("xx")]publicvoid在NTSdemo(){//获取当前文档和编辑器Documentdoc=Application.DocumentManager.MdiActiveDocum
- RK3588 Linux板端推理时报错Segmentation fault解决办法
kennyooooo
linux目标检测yolo嵌入式硬件
目录问题解决生成core文件修改core文件存储路径Ubuntu20.04下的异常状况利用core文件进行调试问题最近在使用rk3588跑官方提供的yolov5模型demo,能够完成单张图片的目标检测,但是在运行视频流demo时,系统报错:segmentationfault(coredumped)此时没有再给出更多的报错信息,不太好debug,在网上阅读了一些博客现在整理一下。解决在Linux下遇
- 踩坑,RK3588编译运行rknn的c++例程
血玥珏
rknnc语言c++开发语言
官网:https://github.com/airockchip/rknn-toolkit2下载rknn-toolkit2-master.zip解压缩后cd进入rknn-toolkit2-master/rknpu2/examples/rknn_yolov5_demo将脚本设置可执行chmod777build-linux.sh按照README_CN.md里的说明运行./build-linux.sh-
- [email protected]系列-Redirect组件
kiramario(长期接受兼职机会)
学习react-routerreact
很久没有碰前端,最近重新学习react-router,发现版本升级到了4.2.0,使用方法都做出了相应的调整。Redirect组件开发中遇到的需求,ajax请求返回状态如果成功则跳转成功页面(很常见吧)。由于是单页应用,跳转前后用Route组件渲染,跳转用Redirect进行控制。测试demo结构如下:其中index.html,server.js和wepack.config.dev.js是我在写w
- Flutter_学习记录_动画的简单了解
一人前行
flutter学习flutter
用AnimationController简单实现如下的效果图:1.只用AnimationController实现简单动画1.1完整代码案例import'package:flutter/material.dart';classAnimationDemoextendsStatefulWidget{constAnimationDemo({super.key});@overrideStatecreateS
- java线程Thread和Runnable区别和联系
zx_code
javajvmthread多线程Runnable
我们都晓得java实现线程2种方式,一个是继承Thread,另一个是实现Runnable。
模拟窗口买票,第一例子继承thread,代码如下
package thread;
public class ThreadTest {
public static void main(String[] args) {
Thread1 t1 = new Thread1(
- 【转】JSON与XML的区别比较
丁_新
jsonxml
1.定义介绍
(1).XML定义
扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。 XML使用DTD(document type definition)文档类型定义来组织数据;格式统一,跨平台和语言,早已成为业界公认的标准。
XML是标
- c++ 实现五种基础的排序算法
CrazyMizzz
C++c算法
#include<iostream>
using namespace std;
//辅助函数,交换两数之值
template<class T>
void mySwap(T &x, T &y){
T temp = x;
x = y;
y = temp;
}
const int size = 10;
//一、用直接插入排
- 我的软件
麦田的设计者
我的软件音乐类娱乐放松
这是我写的一款app软件,耗时三个月,是一个根据央视节目开门大吉改变的,提供音调,猜歌曲名。1、手机拥有者在android手机市场下载本APP,同意权限,安装到手机上。2、游客初次进入时会有引导页面提醒用户注册。(同时软件自动播放背景音乐)。3、用户登录到主页后,会有五个模块。a、点击不胫而走,用户得到开门大吉首页部分新闻,点击进入有新闻详情。b、
- linux awk命令详解
被触发
linux awk
awk是行处理器: 相比较屏幕处理的优点,在处理庞大文件时不会出现内存溢出或是处理缓慢的问题,通常用来格式化文本信息
awk处理过程: 依次对每一行进行处理,然后输出
awk命令形式:
awk [-F|-f|-v] ‘BEGIN{} //{command1; command2} END{}’ file
[-F|-f|-v]大参数,-F指定分隔符,-f调用脚本,-v定义变量 var=val
- 各种语言比较
_wy_
编程语言
Java Ruby PHP 擅长领域
- oracle 中数据类型为clob的编辑
知了ing
oracle clob
public void updateKpiStatus(String kpiStatus,String taskId){
Connection dbc=null;
Statement stmt=null;
PreparedStatement ps=null;
try {
dbc = new DBConn().getNewConnection();
//stmt = db
- 分布式服务框架 Zookeeper -- 管理分布式环境中的数据
矮蛋蛋
zookeeper
原文地址:
http://www.ibm.com/developerworks/cn/opensource/os-cn-zookeeper/
安装和配置详解
本文介绍的 Zookeeper 是以 3.2.2 这个稳定版本为基础,最新的版本可以通过官网 http://hadoop.apache.org/zookeeper/来获取,Zookeeper 的安装非常简单,下面将从单机模式和集群模式两
- tomcat数据源
alafqq
tomcat
数据库
JNDI(Java Naming and Directory Interface,Java命名和目录接口)是一组在Java应用中访问命名和目录服务的API。
没有使用JNDI时我用要这样连接数据库:
03. Class.forName("com.mysql.jdbc.Driver");
04. conn
- 遍历的方法
百合不是茶
遍历
遍历
在java的泛
- linux查看硬件信息的命令
bijian1013
linux
linux查看硬件信息的命令
一.查看CPU:
cat /proc/cpuinfo
二.查看内存:
free
三.查看硬盘:
df
linux下查看硬件信息
1、lspci 列出所有PCI 设备;
lspci - list all PCI devices:列出机器中的PCI设备(声卡、显卡、Modem、网卡、USB、主板集成设备也能
- java常见的ClassNotFoundException
bijian1013
java
1.java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory 添加包common-logging.jar2.java.lang.ClassNotFoundException: javax.transaction.Synchronization
- 【Gson五】日期对象的序列化和反序列化
bit1129
反序列化
对日期类型的数据进行序列化和反序列化时,需要考虑如下问题:
1. 序列化时,Date对象序列化的字符串日期格式如何
2. 反序列化时,把日期字符串序列化为Date对象,也需要考虑日期格式问题
3. Date A -> str -> Date B,A和B对象是否equals
默认序列化和反序列化
import com
- 【Spark八十六】Spark Streaming之DStream vs. InputDStream
bit1129
Stream
1. DStream的类说明文档:
/**
* A Discretized Stream (DStream), the basic abstraction in Spark Streaming, is a continuous
* sequence of RDDs (of the same type) representing a continuous st
- 通过nginx获取header信息
ronin47
nginx header
1. 提取整个的Cookies内容到一个变量,然后可以在需要时引用,比如记录到日志里面,
if ( $http_cookie ~* "(.*)$") {
set $all_cookie $1;
}
变量$all_cookie就获得了cookie的值,可以用于运算了
- java-65.输入数字n,按顺序输出从1最大的n位10进制数。比如输入3,则输出1、2、3一直到最大的3位数即999
bylijinnan
java
参考了网上的http://blog.csdn.net/peasking_dd/article/details/6342984
写了个java版的:
public class Print_1_To_NDigit {
/**
* Q65.输入数字n,按顺序输出从1最大的n位10进制数。比如输入3,则输出1、2、3一直到最大的3位数即999
* 1.使用字符串
- Netty源码学习-ReplayingDecoder
bylijinnan
javanetty
ReplayingDecoder是FrameDecoder的子类,不熟悉FrameDecoder的,可以先看看
http://bylijinnan.iteye.com/blog/1982618
API说,ReplayingDecoder简化了操作,比如:
FrameDecoder在decode时,需要判断数据是否接收完全:
public class IntegerH
- js特殊字符过滤
cngolon
js特殊字符js特殊字符过滤
1.js中用正则表达式 过滤特殊字符, 校验所有输入域是否含有特殊符号function stripscript(s) { var pattern = new RegExp("[`~!@#$^&*()=|{}':;',\\[\\].<>/?~!@#¥……&*()——|{}【】‘;:”“'。,、?]"
- hibernate使用sql查询
ctrain
Hibernate
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import org.hibernate.Hibernate;
import org.hibernate.SQLQuery;
import org.hibernate.Session;
import org.hibernate.Transa
- linux shell脚本中切换用户执行命令方法
daizj
linuxshell命令切换用户
经常在写shell脚本时,会碰到要以另外一个用户来执行相关命令,其方法简单记下:
1、执行单个命令:su - user -c "command"
如:下面命令是以test用户在/data目录下创建test123目录
[root@slave19 /data]# su - test -c "mkdir /data/test123" 
- 好的代码里只要一个 return 语句
dcj3sjt126com
return
别再这样写了:public boolean foo() { if (true) { return true; } else { return false;
- Android动画效果学习
dcj3sjt126com
android
1、透明动画效果
方法一:代码实现
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
View rootView = inflater.inflate(R.layout.fragment_main, container, fals
- linux复习笔记之bash shell (4)管道命令
eksliang
linux管道命令汇总linux管道命令linux常用管道命令
转载请出自出处:
http://eksliang.iteye.com/blog/2105461
bash命令执行的完毕以后,通常这个命令都会有返回结果,怎么对这个返回的结果做一些操作呢?那就得用管道命令‘|’。
上面那段话,简单说了下管道命令的作用,那什么事管道命令呢?
答:非常的经典的一句话,记住了,何为管
- Android系统中自定义按键的短按、双击、长按事件
gqdy365
android
在项目中碰到这样的问题:
由于系统中的按键在底层做了重新定义或者新增了按键,此时需要在APP层对按键事件(keyevent)做分解处理,模拟Android系统做法,把keyevent分解成:
1、单击事件:就是普通key的单击;
2、双击事件:500ms内同一按键单击两次;
3、长按事件:同一按键长按超过1000ms(系统中长按事件为500ms);
4、组合按键:两个以上按键同时按住;
- asp.net获取站点根目录下子目录的名称
hvt
.netC#asp.nethovertreeWeb Forms
使用Visual Studio建立一个.aspx文件(Web Forms),例如hovertree.aspx,在页面上加入一个ListBox代码如下:
<asp:ListBox runat="server" ID="lbKeleyiFolder" />
那么在页面上显示根目录子文件夹的代码如下:
string[] m_sub
- Eclipse程序员要掌握的常用快捷键
justjavac
javaeclipse快捷键ide
判断一个人的编程水平,就看他用键盘多,还是鼠标多。用键盘一是为了输入代码(当然了,也包括注释),再有就是熟练使用快捷键。 曾有人在豆瓣评
《卓有成效的程序员》:“人有多大懒,才有多大闲”。之前我整理了一个
程序员图书列表,目的也就是通过读书,让程序员变懒。 写道 程序员作为特殊的群体,有的人可以这么懒,懒到事情都交给机器去做,而有的人又可
- c++编程随记
lx.asymmetric
C++笔记
为了字体更好看,改变了格式……
&&运算符:
#include<iostream>
using namespace std;
int main(){
int a=-1,b=4,k;
k=(++a<0)&&!(b--
- linux标准IO缓冲机制研究
音频数据
linux
一、什么是缓存I/O(Buffered I/O)缓存I/O又被称作标准I/O,大多数文件系统默认I/O操作都是缓存I/O。在Linux的缓存I/O机制中,操作系统会将I/O的数据缓存在文件系统的页缓存(page cache)中,也就是说,数据会先被拷贝到操作系统内核的缓冲区中,然后才会从操作系统内核的缓冲区拷贝到应用程序的地址空间。1.缓存I/O有以下优点:A.缓存I/O使用了操作系统内核缓冲区,
- 随想 生活
暗黑小菠萝
生活
其实账户之前就申请了,但是决定要自己更新一些东西看也是最近。从毕业到现在已经一年了。没有进步是假的,但是有多大的进步可能只有我自己知道。
毕业的时候班里12个女生,真正最后做到软件开发的只要两个包括我,PS:我不是说测试不好。当时因为考研完全放弃找工作,考研失败,我想这只是我的借口。那个时候才想到为什么大学的时候不能好好的学习技术,增强自己的实战能力,以至于后来找工作比较费劲。我
- 我认为POJO是一个错误的概念
windshome
javaPOJO编程J2EE设计
这篇内容其实没有经过太多的深思熟虑,只是个人一时的感觉。从个人风格上来讲,我倾向简单质朴的设计开发理念;从方法论上,我更加倾向自顶向下的设计;从做事情的目标上来看,我追求质量优先,更愿意使用较为保守和稳妥的理念和方法。
&