近期Visual Studio推出Mac版本号的消息迅速在技术圈里刷屏,当project师们最喜欢的笔记本电脑Mac,邂逅地球上最强大的集成开发环境Visual Studio的时候,会碰撞出如何精彩的火花呢?在微软新任CEO纳德拉的"移动为先.云为先"战略下,微软的转变渐渐開始让人欣喜.从.NET Core.VSCode.TypeScript再到近期的Visual Studio For Mac,这一系列动作让我们感觉到.微软的技术栈越来越多地向着开源和跨平台两个方向努力. 我们曾经…
[技术博客] 用Monaco Editor打造接近vscode体验的浏览器IDE 官方文档与重要参考资料 官方demo 官方API调用样例 Playground 官方API Doc,但其搜索框不支持模糊匹配 官方GitHub Issues,可搜索相关问题 CSDN优秀博客 带主题颜色选择的demo 依赖与配置 在浏览器中搭建Monaco Editor,推荐使用ESModule版本+WebPack+npm插件的形式,比较简单.链接中即为官方给出的部署样例. 需要注意的是,经过笔者踩坑,推荐的nod…
今儿个是冬至,所谓“冬大过年”,公司也应景五点钟就放大伙儿回家吃饺子喝羊肉汤了,而我本着极高的职业素养依然坚持留在公司(实则因为没饺子吃没羊肉汤喝,只能呆公司吃食堂……).趁着这一个多小时的时间,想跟大家介绍下前段时间整的一个基于netty http协议栈的轻量级流程控制组件 nettice(点此查看代码),目前已经实现了一些功能并将持续完善,希望能为大伙儿切实解决一点开发问题(或者至少提供一些思路). 什么是流程控制组件? 服务的流程,简单来说就是在一次交互过程中,对 client 端而言,是…
前言: 本章介绍自己写的基于java.util.logging的轻量级日志记录库(baseLog). 该版本的日志记录库犹如其名,baseLog,是个实现日志记录基本功能的小库,适合小型项目使用,方便快捷,简单实用,没有使用缓冲区,日志写出操作都是同步操作. 很早就想过要写两个日志记录器,一个用于大项目(logGuide),解决多线程模型下的日志记录并发性能问题:一个是基于Java的logging库写的简单同步日志记录,适合小项目,简单.便捷. 之前写过一个logGuide,该日志记录系统没有使…
前言 做过移动Web开发的同学都知道,移动端日期选择是很常见的需求.在PC端,我们有很丰富的选择,比较出名的就有Mobiscroll和jQuery UI Datepicker.个人看来,这些插件存在的两个显而易见的问题,第一是过重的依赖,对于jQuery的插件,已经强制依赖了80多k的庞然大物,把很多移动端项目拒之门外:第二是太过强大的功能,很多插件花百分之八十的时间去完善插件百分之二十炫酷的额外功能,导致代码量变大,配置繁杂.所以一款少依赖.轻量级和使用简单的移动端日期选择插件是非常必要的.本…
Node.js轻量级跨平台图像编解码库 github:https://github.com/zhangyuanwei/node-images Features 功能特性 轻量级:无需安装任何图像处理库. 跨平台:Windows下发布了编译好的.node文件,下载就能用. 方便用:jQuery风格的API,简单可依赖. 我们可以通过这个插件做什么呢,常见的可以加水印,简单的放大缩小压缩处理等. 实例: //编码图片依赖模块https://github.com/zhangyuanwei/node-i…
基于模板元编程技术的跨平台C++动态链接载入库.通过模板技术,使用者仅需通过简单的宏,就可以使编译器在编译期自己主动生成载入动态链接库导出符号的代码,无不论什么额外的执行时开销. extern "C" { typedef int(*Proc_fnTestDll)(); typedef const char* (*Proc_fnTestDll2)(const char*); } ASL_LIBRARY_BEGIN(Test) // 强制载入名为fnTestDll的接口,假设没有该接口.则…
Pycharm打造高效Python IDE 建议以scientific mode运行,在科学计算时,可以方便追踪变量变化,并且会提示函数的用法,比普通模式下的提示更加智能,一般在文件中引入了numpy等科学计算包时会自动识别,并提示使用scientific mode模式. 具体步骤: Settings –> Tools –> Python Scientific > Show plots in tool window 勾选,经过尝试,这条最好不要勾选,勾选这条,画图的时候会使用scivie…
http://blog.163.com/jackie_howe/blog/static/19949134720125591752396/ 用notepad++ 打造轻量级Java编译器 2012-06-05 21:24:49|  分类: Java|举报|字号 订阅     下载LOFTER我的照片书  |     首先按F6,会弹出执行命令的对话框,在Command(s)中输入下列四行:   npp_save// 保存文件 cd "$(CURRENT_DIRECTORY)" D:\jd…
背景 随着 5G.物联网设备的爆炸性增长以及智能终端不断增强的计算能力,带来了前所未有的数据量,传统的中心集中式计算捉襟见肘."新基建"战略的实施,工业互联网.车联网/自动驾驶.智慧交通.云游戏及 VR/AR 等标杆应用引领产业融合,企业上云常态化,催生出分布式云,混合云,边缘云等概念.Gartner 预计到2025年,超过 50% 的组织将在其选择的地点使用分布式云选项,从而实现业务模型转型.企业生成的 75% 的数据将在传统数据中心或云之外的,更接近最终用户的边缘创建和处理. 云计…
[简介] Leanote一款开源云笔记软件,它使用Go的Web框架revel和MongoDB开发完成的,其是目前为止发现的最有bigger的云笔记,它支持markdown输入,代码高亮,多人协作,笔记历史记录,笔记内导航,直接发布为博客等等.最重要的是它完全开源的,我们可以通过在Azure云服务器去搭建属于自己私有的云笔记-在任何地点,任何时间记录自己想记录的笔记!那亲爱的小伙伴们,跟随我来一起来吧- [前期文章] [Microsoft Azure 的1024种玩法]一.一分钟快速上手搭建宝塔管…
1. 基于windows环境VsCode的ESP32开发环境搭建,网上有各类教程,但是我实测却不行. 例如我在vscode内安装的乐鑫插件,扩展配置项是下图这样: 而百度的各类博文却都是这样: 经过网友提示,让我安装1.2.0版本的乐鑫插件.(我装的是vscode提供的默认的最新版的插件) 如下图这样,安装最新版本后,再选择安装另一个版本 安装好1.2.0的版本,就可以继续按照百度的各类博文去继续安装了,包括在线安装IDF以及IDF-TOOLS,或者离线安装的方式. 1.1 在线安装的方式,参考…
文章已收录到 github,欢迎 Watch 和 Star. 简介 在了解 Element 源码架构 的基础上,接下来我们基于 element-ui 为团队打造自己的组件库. 主题配置 基础组件库在 UI 结构上差异很小,一般只是在主题色上会有较大差异,毕竟每个团队都有了 UI 风格.比如,我们团队的 UI 设计稿其实是基于 Ant Design 来出的,而组件库是基于 Element-UI 来开发,即使是这种情况,对组件本身的改动也很少.所以,基于开源库打造团队自己的组件库时,主题配置就很重要…
.Net 的项目都挺重的,一直想找一个轻量级的 CSharp 环境,能像Python那样,选一个文件就能跑的.之前用的是 LinqPad,但它的缺点也很明显: (1)     不付费,自动完成不能用(好吧,俺购买了): (2)     丑!(这个不能忍受!丑影响心情,作为一位靠灵感吃饭的算法开发人员,能忍受贵,不能忍受丑!) 于是自己动手,把VSCode改成了轻量级 CSharp 环境. (1)     建立一个目录,比如,VSCodeTest,进入该目录,dotnet new console…
跨平台移动应用开发框架Xamarin可以让你完全用C#编写你的应用程序,在iOS.Android.Windows Phone 8.Windows8和mac平台上共享相同的代码.你可以重用你最喜欢的.NET库,而且还很容易地使用平台特定的库和框架.Xamarin提供了高性能编译的代码和完全访问所有本地API.所以Objective-C和Java能干的事,Xamarin的C#平台工具一样可以出色完成. Xamarin 在5月28日发布了Xamarin 3,主要有四个重要的变化. 首先,他们有了一个坚…
一.引言 实现跨平台通信的协议主要有简单对象訪问协议(Simple Object Access Protocol,SOAP).代表性状态传输(Representational State Transfer,REST)以及 XML 远程过程调用协议(XML Remote Procedure Call,XML-RPC)等. 二.为什么选择 XML-RPC? 集成 C/C++ 的挑战能够通过多种方式加以解决.C/C++ 代码集成的典型方法包含通过公共对象请求代理体系结构(Common Object R…
一.持续部署 1. 现状 由于没有建立标准的持续部署流程,导致了版本管理混乱,制品管理混乱,上线持续时间长,上线测试覆盖不全面,业务流量上升后故障较多,排查复杂.运维.测试.开发人员每次版本迭代的时候,都要可能需要经历一次通宵的历练,并且这种在上线的第二天依然会出现很多线上故障. 2. 痛点 自动化发布体系覆盖率低. 无标准化发布的流程. a)  只注重敏捷.忽视质量问题: b)  变更频繁导致故障率增加: c)  开发语言种类多,发布制品管理混乱,发布方式复杂: 安全问题容易被忽视. 二.工具…
一.什么是WebZ WebZ是我用Python写的“关键字驱动”的自动化测试框架,基于WebDriver. 设计该框架的初衷是:用自动化测试让测试人员从一些简单却重复的测试中解放出来.之所以用“关键字驱动”模式是因为我觉得这样能让测试人员(测试执行人员)快速上手,无需编写代码也能执行自动化测试. 二.为啥开源 WebZ的开发用到了一些现有的开源项目,我很感谢这些开源项目的作者,希望自己也能成为一名开源者,和大家分享自己的成果,一起交流技术.一起成长. 该项目的GitHub地址:https://g…
我们有很多全局的工具能在各处使用命令行调用,针对某个仓库特定的命令可以放到仓库中.不过,如果能够直接为顺手的文本编辑器添加自定义的外部命令,那么执行命令只需要简单的快捷键即可,不需要再手工敲了.   写一个外部命令的调用 由于是调用外部工具,所以工具本身用什么语言写已经不重要的了,只要有环境,没有什么是不能执行的. 这里以我博客中使用的外部命令 mdmeta 为例.我将此工具使用 mklink 命令链接到了 /build 文件夹中(当然,如果需要多人协作开发,可以使用 git-lfs 或者 gi…
什么是 ClChart? ClChart是一个基于canvas创建的简单.高性能和跨平台的股票数据可视化开源项目.支持PC.webApp以及React Native和Weex等平台.在React Native和Weex上完全适配开源项目GCanvas,可轻松使用GCanvas来使得您开发的应用在android和ios上具有原生绘图的能力. 为什么需要ClChart 在现有的开源库中,不乏有非常不错的开源图表库,通用图表库有chartjs,echart,highchart等,这些图表库具有非常完备…
前言 业务监控对许许多多的场景都是十分有意义,业务监控看板可以让我们比较直观的看到当前业务的实时情况,然后运营人员可以根据这些情况及时对业务进行调整操作,避免业务出现大问题. 老黄曾经遇到过一次比较尴尬的"事故". 其中一条业务线,服务着的其中一个商家,把大部分流量切到另外一个地方去了,而我们的运营人员在当天却是完全不知情,第二天看了昨天的统计报表之后才发现这个商家的量少了很多,才能跟进协调处理. ps: 当时实时报表比较欠缺,都是第二天凌晨生成昨天的数据报表,也没有告警机制. 后面就…
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_100 其实呢这么多年以来我一直建议每个有技术追求的开发者都要有写技术博客记笔记的良好习惯,一来可以积累知识,二来可以帮助别人,三来可以把开发中遇到的问题记录用来自省,第四可以通过交换友链来结识更多的技术领域的同仁. 之前我曾经写过两篇相似的文章用来快速搭建个人网站,一款基于go lang:利用基于Go Lang的Hugo配合nginx来打造属于自己的纯静态博客系统另外一款基于node.js:使用Hexo建立一个轻量.简易.高逼…
git clone github.com/mono的源码,日期:2014-06-19,百度网盘链接:http://pan.baidu.com/s/1kTG9EUb 关于asp.net利用mono部署到Linux上的一些说明 使用EntityFramework6连接MySql数据库(db first方式) 使用EntityFramework6连接MySql数据库(code first方式) 关于Linux和Windows下部署mysql.data.dll的注册问题…
Aop注入有2种方式:动态注入和静态注入,其中动态注入有很多实现了 动态注入有几种方式: 利用Remoting的ContextBoundObject或MarshalByRefObject. 动态代理(反射),很多AOP框架都用这种方式. MVC的filter,也是反射. 这里主要介绍静态注入 ========================================================================================== 起初的想法是实现一种功能…
1. vim 的安装 $sudo apt-get install vim vim-scripts vim-doc <br> 其中vim-scripts包含了vim的一些基本插件,包括语法高亮,缩进等等.vim的中文文档tar包下载地址: http://sourceforge.net/projects/vimcdoc/files/vimcdoc/解压后其中有个doc文件夹, 将其中的内容全部复制到~/.vim/doc, 或者vim安装目录下的doc目录中, 此时vim中的help信息已经是中文的…
Sublime text2是一款非常方便的文本编辑器,现在我基本上不用IDE去编写代码,一般都是在Sublime text2中编辑,当然,这里无法执行.debug是软肋,于是上网找了下资料,可以把添加Sublime text的build类型. 1.Tools > build system  >   new build system 2.代码如下 { "cmd": ["D:\\wamp\\bin\\php\\php5.3.13\\php.exe", &qu…
在过去的教程中,使用 Maven 创建了一个Java项目,但是这个项目不能导入到Eclipse IDE中,因为它不是 Eclipse 风格的项目. 这里有一个指南,向您演示如何转换 Maven 生成 Java 项目为 Eclipse 支持格式的项目. 1. mvn eclipse:eclipse 这真的很容易做到这一点.浏览到 Java 项目文件夹,其中 pom.xml 文件被重写.并发出以下命令: C:\worksp>mvn archetype:generate -DgroupId=com.y…
说明:Fiddler官方提供了Mono版本的,但是只有2014版本的,不是最新的,并且运行期间会有BUG,比如界面错乱卡死等等,但是勉强能代理,抓SSL的包,如果使用了要做好心理准备.将就一下还是可以接受的. 下载: http://fiddler.wikidot.com/mono 离线版本:(链接: https://pan.baidu.com/s/1eRJZPwY 密码: hzqv) 安装: 1.Mono sudo apt-get install mono-complete 2.Fiddler…
当下软件发展趋势 当今 IT 行业发展中比较流行的几个技术,首先是微服务化,将原有的一个系统拆分成多个,意味着有多个系统需要构建.测试.部署和运维. 第二个是敏捷开发模式,需求粒度更细化,要求一个可独立部署单元快速开发.快速测试.快速部署上线,实现快速迭代. 还有一个就是容器化,随着容器技术的快速发展,越来越多的应用迁移到了容器上. 这时候就会出现一些问题,如果当下软件交付继续使用传统模式,就会需要花费大量的人力物力,同时有大量的重复部署任务,且交付无法做到快速型.那么有没有一种更好的交付方式满…
什么是脚手架? Scaffolding is a meta-programming method of building database-backed software applications. It is a technique supported by some model-view-controller frameworks, in which the programmer may write a specification that describes how the applica…