- vLLM 部署大模型
哦豁灬
深度学习LLM人工智能vLLM大模型部署LLM
1介绍vLLM是来自UCBerkeley的LMSYS在LLM推理方面的最新工作(没错就是搞出Vicuna的那个group),最大亮点是采用PagedAttention技术,结合ContinuousBatching,极大地优化了realtime场景下的LLMserving的throughput与内存使用。vllmgithub仓库1.1安装安装命令:pip3installvllm#vllm==0.2.
- keil5 编译程序出现错误Error: L6411E: No compatible library exists with a definition of startup symbol __main
毛毛虫的爹
HI3531
Error:L6411E:Nocompatiblelibraryexistswithadefinitionofstartupsymbol__main.之前装过ADS,ADS与MDK冲突,依据网友提供的资料,最终的解决办法如下
- 官宣 | Fluss 0.6 发布公告
Apache Flink
flink大数据
Fluss社区很高兴地宣布Fluss0.6.0版本正式发布。这一版本历时3个多月的密集开发,凝聚了全球45位贡献者的智慧与努力,累计完成200+次代码提交。衷心感谢每一位贡献者的支持!此次版本的发布带来了诸多功能亮点:列压缩:保留列裁剪性能的同时,降低6倍存储空间!MergeEngine:新增灵活的主键数据合并策略,满足不同的实时处理场景需求。PrefixLookup:DeltaJoin功能,Fl
- Python3包开发的高效Cookiecutter模板:python-package-template
一只爪子
本文还有配套的精品资源,点击获取简介:本文介绍了一个名为python-package-template的Cookiecutter模板,用于简化Python包的开发过程。该模板遵循Python的最佳实践,并自动创建项目结构,包括setup.py、MANIFEST.in、LICENSE、README.md、.gitignore、requirements.txt、测试配置文件、CI配置文件、测试目录和文
- oracle数据库——游标 隐式游标 显式游标 带参数的游标 带锁的游标 动态游标 强类型
一JJL
数据库游标隐式游标显式游标带参数的游标带锁的游标动态游标强类型
游标逐行提取查询结果,所以返回结果可以超过一行%NOTFOUND--如果FETCH语句失败,则该属性为"TRUE",否则为"FALSE";%FOUND--如果FETCH语句成功,则该属性为"TRUE",否则为"FALSE";%ROWCOUNT--返回游标当前行的行数;1.隐式游标--查看修改数据后会影响到多少行数据beginupdateempsetsal=sal+100wheredeptno=&d
- 第四章:ESP32零基础教学 - 4.2继电器、舵机与L298N电机
龙大大L
ESP32arduino单片机嵌入式硬件stm32
一、硬件准备ESP32开发板5V继电器模块9g微型舵机(SG90)L298N电机驱动模块DC电机(6-12V)面包板与杜邦线外部电源(用于电机供电)二、继电器控制接线说明继电器引脚ESP32引脚VCC5VGNDGNDINGPIO23代码实现#defineRELAY_PIN23//继电器信号引脚voidsetup(){pinMode(RELAY_PIN,OUTPUT);//设置引脚为输出模式}voi
- Nginx负载均衡策略详解:从轮询到智能分发,打造高可用服务架构
egzosn
nginx负载均衡架构运维
Nginx负载均衡策略详解:从轮询到智能分发,打造高可用服务架构一、负载均衡的核心价值当单台服务器无法承载高并发流量时,负载均衡通过将请求分发到多台服务器,实现:横向扩展:突破单机性能瓶颈故障隔离:自动剔除异常节点动态调度:根据策略优化资源利用率二、Nginx原生负载均衡策略1.轮询(RoundRobin)配置示例:upstreambackend{server192.168.1.10:8080;s
- STM32八股【1】-----启动流程和startup文件理解
Invinciblenuonuo
stm32arm
启动流程知识点MCU上电复位。MSP从向量表第0个地址读取一个32位(2字节)的值并保存,该值为栈顶地址。PC计数器从第1个地址读取一个两字节的值并保存,该值为程序入口,一般是Reset_Handler。想了解FLASH地址映射可以看STM32八股【4】-----AHB地址映射__VectorsDCD__initial_sp;TopofStackDCDReset_Handler;ResetHand
- 解决stm32引脚如果选择输入模式
雁过留声花欲落
单片机嵌入式硬件
1.输入模式分类STM32的GPIO输入模式主要分为以下四种:浮空输入(FloatingInput/InputFloating)上拉输入(InputPull-Up)下拉输入(InputPull-Down)模拟输入(AnalogInput)2.各模式详解(1)浮空输入(FloatingInput)电路结构:引脚内部不连接上拉或下拉电阻,完全由外部电路决定电平状态。等效电路:引脚直接连接施密特触发器(
- 【Docker】搭建实用的内网穿透工具 - FRP
UPToZ
群晖Dockerdocker容器运维
前言本教程基于群晖的NAS设备DS423+的docker功能进行搭建FRP的客户端,DSM版本为7.2.1-69057Update5。采用香港机Debian12系统的服务器来安装FRP的服务端作为演示。服务器购买地址:https://www.crash.work/aff/AQXGDNKY简介FRP(FastReverseProxy)是一个高性能的反向代理应用,它可以帮助您将内网服务通过反向代理暴露
- mac npm run dev报错 error:0308010C:digital envelope routines::unsupported
大波V5
macosnpm前端
并且提示Unsupportedengine{npmWARNEBADENGINEpackage:'@achrinza/
[email protected]',npmWARNEBADENGINErequired:{node:'8||10||12||14||16||17'},npmWARNEBADENGINEcurrent:{node:'v18.18.0',npm:'9.8.1'}npmWARNEBADENGI
- 探索简明虚拟机新纪元 —— SSVM 深度揭秘与应用指南
殷巧或
探索简明虚拟机新纪元——SSVM深度揭秘与应用指南SSVMJavaVMrunningonaJVM项目地址:https://gitcode.com/gh_mirrors/ssv/SSVM在当今软件开发的浩瀚宇宙中,一种名为SSVM(StupidlySimpleVM)的轻量级虚拟机正悄然兴起,承诺为开发者带来前所未有的灵活性与效率。本文将深入剖析SSVM的核心特性,探讨其技术实现,展示应用场景,并揭示
- Python基础知识点总结
豆芽819
tippython开发语言
1Python简介Python特点:解释型语言:无需编译,逐行执行。动态类型:变量类型在运行时确定。简洁易读:语法接近自然语言,代码简洁。跨平台支持:Windows/Linux/macOS均可运行。应用领域:Web开发、数据分析、人工智能、自动化脚本等。开发环境:推荐使用IDLE、PyCharm、VSCode或JupyterNotebook。2Python数值运算基本运算符:算术:+,-,*,/,
- 环境准备系列——使家里的工作站在公网上也可以通过ssh进行访问
music&movie
工具ssh运维
一、基础配置:启用SSH服务与端口开放安装SSH服务•Ubuntu/Debian系统:sudoaptupdate&&sudoaptinstallopenssh-server•CentOS系统:sudoyuminstallopenssh-server•启动服务:sudosystemctlstartsshd&&sudosystemctlenablesshd修改默认端口(推荐)•编辑配置文件:sudov
- 在Ubuntu20.04上交叉编译能在Windows上运行的Qt5应用
daqinzl
linuxqtC++Ubuntu20.04Qt5交叉编译Windows应用
参考链接:https://blog.csdn.net/Interview_TC/article/details/146050419https://bugreports.qt.io/browse/QTBUG-82592重要设置sudoupdate-alternatives--configx86_64-w64-mingw32-g++选择后缀带posix的,(/usr/bin/x86_64-w64-mi
- linux上安装postgresql9.5
crayon-shin-chan
#postgresqlsurprise#linuxlinuxubuntuPostgreSQL数据库
1.查看源版本czy@Mint~$sudoapt-getupdateczy@Mint~$apt-cachemadisonpostgresqlpostgresql|9.5+173ubuntu0.3|http://archive.ubuntu.com/ubuntuxenial-updates/mainamd64Packagespostgresql|9.5+173ubuntu0.3|http://arc
- HTML5前端第七章节
NaZiMeKiY
HTML51024程序员节
本章节为前端网页页面实战,包含我们之前所学的全部内容一.创建项目目录1.网站根目录:网站根目录指的是存放网站的第一层文件夹,内部包含当前网站的所有素材,包含HTML,CSS,需要的素材图片等等2.根目录之下的文件夹(1).images文件夹:存放固定使用的图片素材(2).uploads文件夹:存放非固定使用的图片素材(3).CSS文件夹:存放CSS文件(使用link标签引入)在CSS文件夹中又分为
- 可视化动态表单动态表单界的天花板--Formily(阿里开源)
hhzz
前端相关开源可视化动态表单
文章目录1、Formily表单介绍2、安装依赖2.1、安装内核库2.2、安装UI桥接库2.3、Formily支持多种UI组件生态:3、表单设计器3.1、核心理念3.2、安装3.3、示例源码4、场景案例-登录注册4.1、MarkupSchema案例4.2、JSONSchema案例4.3、纯JSX案例1、Formily表单介绍Formily是一个由阿里开源的动态表单解决方案,主要用于构建和管理复杂的表
- 嵌入式音频框架alsa学习之pcm状态
Liu-Eleven
linux声音框架音视频学习pcm
/**PCMstate*/typedefenum_snd_pcm_state{/**Open*/SND_PCM_STATE_OPEN=0,/**Setupinstalled*/SND_PCM_STATE_SETUP,/**Readytostart*/SND_PCM_STATE_PREPARED,/**Running*/SND_PCM_STATE_RUNNING,/**Stopped:underru
- MiniMind:完全从 0 训练自己的大模型
三花AI
三花AI人工智能LLM大模型
是B站UP主近在远方的远开源的一个微型语言模型,改进自DeepSeek-V2、Llama3结构,项目包含整个数据处理、pretrain、sft、dpo的全部阶段,包含混合专家(MoE)模型。其目标是把上手LLM的门槛无限降低,直接从0开始训练一个极其轻量的语言模型,最低仅需2G显卡即可推理训练!
- MiniMind
亚伯拉罕·黄肯
大模型人工智能
数据集分类:tokenizer训练集:这个数据集用于训练分词器(tokenizer),是文本处理中的一个重要步骤。它可以帮助模型更好地理解文本数据的结构。Pretrain数据:这是用于预训练模型的数据集,它可以帮助模型学习语言的基本结构和特征。SFT数据:SFT(SupervisedFine-Tuning)数据集,用于监督式微调,可以提高模型在特定任务上的性能。DPO数据1和DPO数据2:这两个数
- centos环境安装swoole后,php7无法加载swoole.so时出现nable to load dynamic library 'swoole.so'
yyfx2010
swoolephp7swoolephp7.2
先贴上错误提示[
[email protected]]#php-vPHPWarning:PHPStartup:Unabletoloaddynamiclibrary'swoole.so'(tried:/usr/lib64/php/modules/swoole.so(/usr/lib64/php/modules/swoole.so:undefinedsymbol:php_sockets_le_socket)
- 关于swoole的初步了解记录
snacy
swoolephp服务器
今天初步了解了一下关于swoole的相关知识,在这里记录一下。关于swoole的初步了解记录安装swoole扩展swoole扩展需要在Linux环境下安装,目前还不支持在Windows环境下安装,当前操作系统为centOS系统安装swoole需要:PHP、php-pear(这个是为了稍后可以使用pecl来安装swoole)、php-devel、gcc先执行更新操作:yumupdate(已更新过的可
- Lineageos 22.1(Android 15) 开机向导制作
JabamiLight
Lineageosandroidandroid15开机向导Lineageos22.1
一、前言开机向导原理其实就是将特定的category的Activity加入ComponentResolver,如下然后我们开机启动的时候,FallbackHome结束,然后启动Launcher的时候,就会找到对应的开机向导Activity页面。所以我们现定制我们自己的应用。这篇文章只适用于aosp原版的provision,Lineageos有自己的setup_wizard,虽然按照流程可以启动,但
- Windows 11 24H2 中文版、英文版 (x64、ARM64) 下载 (2025 年 3 月更新)
windows
Windows1124H2中文版、英文版(x64、ARM64)下载(2025年3月更新)Windows11,version24H2EnterpriseArm64x64(updatedMar2025)请访问原文链接:https://sysin.org/blog/windows-11/查看最新版。原创作品,转载请保留出处。作者主页:sysin.org全新Windows体验,让您与热爱的人和事物离得更近
- feign发送GET请求传递对象参数,报错Request method ‘POST‘ not supported
码到成功>_<
java开发语言
feign发送GET请求传递对象参数,报错Requestmethod‘POST‘notsupported参考:Feign发送Get请求时使用对象传递参数(Requestmethod‘POST‘notsupported问题)Fegin的GET请求传对象解决Feign调用的GET参数传递的问题
- WPF把Canvas另存为
baijing7600
ui
由于wpf的UI使用xaml来表达的,所以我们们可利用这个优点,把WPF中的xaml元素另存为各样的文件,在很多时候我们都不须要这样的操作。把xaml保存为图片、字符串、XPS等等。这里我写了一些方法,以供大家参考.。注意:以下保存操作前,一定要确保参数中的canvas有高和宽。1.把canvas保存为文本文件1:usingSystem.Windows.Markup;2:usingSystem.I
- wooyun知识库爬虫(自动整理保存为pdf)
大囚长
编程人生黑客帝国spiderpython
#!C:\Python27\python.exe#coding=utf8importosimportpdfkitimporturllib2frombs4importBeautifulSoupfrommultiprocessingimportPoolimportsocketsocket.setdefaulttimeout(60)importsysreload(sys)sys.setdefaulten
- 看完荣耀CEO李健的“阿尔法战略”,我愈发的怀念赵明了
互联网江湖
人工智能大数据物联网
文:互联网江湖作者:刘致呈赵明辞任一月余,新官上任第一把火来了。灯光打在身上,新任荣耀CEO李建站在台上宣布,荣耀就此将成为一家AI终端生态公司。李健身后的屏幕上,映出一行字:“HONORALPHAPLAN”。这就是荣耀未来的新方向:“阿尔法战略”。所谓“阿尔法战略”,其实核心就一句话,荣耀要转型成为“生态公司”。第一把火就要给重新定位战略,李健这把火烧得很猛,分量很足。向着生态转型并没有错,华为
- Ubuntu18.04切换python3.8版本
波波维琦
pythonlinuxubuntu
安装python3.8sudoaptinstallpython3.8赋予python优先级sudoupdate-alternatives--install/usr/bin/pythonpython/usr/bin/python3.82切换python默认版本sudoupdate-alternatives--configpython选择python3.8的编号,回车赋予python3优先级sudou
- 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设计
这篇内容其实没有经过太多的深思熟虑,只是个人一时的感觉。从个人风格上来讲,我倾向简单质朴的设计开发理念;从方法论上,我更加倾向自顶向下的设计;从做事情的目标上来看,我追求质量优先,更愿意使用较为保守和稳妥的理念和方法。
&