惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

P
Proofpoint News Feed
Microsoft Azure Blog
Microsoft Azure Blog
Jina AI
Jina AI
博客园_首页
宝玉的分享
宝玉的分享
The Cloudflare Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
量子位
T
Tailwind CSS Blog
雷峰网
雷峰网
Blog — PlanetScale
Blog — PlanetScale
Last Week in AI
Last Week in AI
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Hugging Face - Blog
Hugging Face - Blog
月光博客
月光博客
罗磊的独立博客
F
Fortinet All Blogs
酷 壳 – CoolShell
酷 壳 – CoolShell
Stack Overflow Blog
Stack Overflow Blog
J
Java Code Geeks
V
V2EX
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
The GitHub Blog
The GitHub Blog
Apple Machine Learning Research
Apple Machine Learning Research
博客园 - 聂微东
U
Unit 42
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
D
Docker
阮一峰的网络日志
阮一峰的网络日志
I
InfoQ
Simon Willison's Weblog
Simon Willison's Weblog
D
DataBreaches.Net
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
I
Intezer
Scott Helme
Scott Helme
B
Blog
M
MIT News - Artificial intelligence
K
Kaspersky official blog
H
Help Net Security
V
Vulnerabilities – Threatpost
C
CXSECURITY Database RSS Feed - CXSecurity.com
Engineering at Meta
Engineering at Meta
博客园 - 【当耐特】
L
Lohrmann on Cybersecurity
P
Privacy & Cybersecurity Law Blog
Project Zero
Project Zero
The Hacker News
The Hacker News
B
Blog RSS Feed
T
Tor Project blog

博客园 - 代震军

重磅发布码农界的第一张吉他专辑小样 当C++遇到iOS应用开发---LRUCache缓存 当C++遇到iOS应用开发---Dict集合 当C++遇到iOS应用开发之---List集合 当C++遇到iOS应用开发---字符串处理 当C++遇到iOS应用开发---SQLITE篇 开源ImageFilter库For IOS源码发布 开源ImageFilter库v0.4:新增26种图片效果 开源ImageFilter库v0.3:新增22种图片效果 开源ImageFilter库v0.2:新增7类滤镜,支持12种图片效果 Android, WindowsPhone7, IOS ,vc2010平台40多套图片滤镜开源 Discuz!NT中的LLServer架构设计 LLServer1.0及C#客户端正式发布并开源 Mongodb源码分析--Replication之OpLog Mongodb源码分析--Replication之主从模式--Slave 这样的“牛”人最好别碰上 Mongodb源码分析--Replication之主从模式--Master Mongodb源码分析--链接池(ConnPool) Mongodb源码分析--Mongos之分布式锁
HRPlugin For Xcode发布(附源码地址)
代震军 · 2013-06-25 · via 博客园 - 代震军

      今天给大家介绍的这个插件,是我在IOS平台上开发以来,一些想法的集合体。因为本人时常感觉在开发过程中无论从GOOGLE资料查找和SQL数据库查询,正则表达式测试,SVN等,这些经常要做的操作中,耽误了我不少的时间,甚至会打断我对业务的思考,进而影响对程序的理解。
     在忍无可忍的情况下,我决定自己动手造一些工具,希望借它避开频繁切换窗体过程对开发者思维的影响。

     好了,开始今天的正文吧!

    首先要声明的是,因为本人怀疑苹果公司并不支持开发者来为XCODE开发插件,但如果不HACK一些底层的API,有些插件功能又是无法实现,而这些API往往又可能会在下个版本中被修改甚至移除。所以本人无法保证所有的XCODE版本都可运行该插件。本人目前使用的XCode版本为 4.6.2 (4H1003)。

    本插件的安装有两种方式:
    I:下载这个链接中的文件(https://files.cnblogs.com/daizhj/HRPlugin.dmg.zip),双击解压,运行里面的DMG文件。并运行弹窗中的”install.command“文件,这样就会完成安装了。
    II:下载本项目源码(https://github.com/daizhenjun/HRXcodePlugin),之后用XCODE打开Build即可。
    
    采用其中一种方式安装完成后,完全退出XCode(在DOCK上的XCODE图标击右键,选“退出”即可)
    
    下面就来看一下该插件的运行效果,如下:
   
    
    
    下面做一个使用介绍:
    首先是搜索功能,当选中代码中的一段文件,如下图(NSRegularExpression)时:
  
    
    这时点击插件中的“GoogleSearch”,会启动浏览器,如下图(这里插件为您添加了Stackoverflo关键字):
   
    
    
    同理也可以使用BaiduSearch,但鉴于Baidu多数情况下搜不出什么像样的干货,这理就不做说明了。
    
    
    下面介绍一下SVN功能。首先要用命令行或其它方式初始化本地版本库和相关的用户信息(包括密码)等。之后就可以使用下面窗口设置本地源码的SVN路径了:
   

   


    
       这样,只要把你的项目源码放在该路径下,使用XCode打开相关源码文件,执行修改或添加文件等操作时,只要点击HRPlugin菜单中SVN的相关菜单项操作即可。如下图:
   
    
    如果之前SVN设置有问题或在提交过程中出现问题,插件都会回显相关的错误信息给你,比如:
   
    
    
    
       同理,也可以完成GIT的设置,其实在写这个插件过程中,我一直用该插件来向GITHUB提交代码。基本没发现什么问题(欢迎feedback bug).
    
    下面看一下对SQLITE数据库的支持,点击插件菜单的”Sqlite Helper“, 会启动该助手。
   
    
      这里要说明的是,该助手第一次启动时会让您选择一个本地的SQLITE数据库文件,如果没有选择,插件会为您构造一个SQLITE文件,并向其中添加两张表,一个是student,一个是teacher,如下图:
   


       大家可以看到左侧会列出当前数据库中的表及其相关结构信息。
    
       接着输入相应的SQL脚本,如下图,并点击"run sql"按钮:
   
    
       我们看到在下面的表格中显示了该表的记录,包括刚insert的那个记录。同时这个输入框还支持执行选中的SQL脚本,如下:
   

     大家看到这里显示的是"select * from teacher"的结果(注:要输入多行脚本,按住“command或option“之后按回车键即可)。
    
     除此以外,该助手还支持导出建表脚本和代码生成(支持object-c, c#, java三种语言),只要在相应的表结点上击鼠标右键即可:
    
     

     接下来再介绍一下HTTP代理服务器功能,引入它的目的是为了方便开发手机客户端应用。只要点击插件菜单的"Http Proxy",就可以看到它的界面了,如下图:
   
    
    它会侦听当前机器的8000端口上的HTTP请求。为了测试方便,我们可以在Firefox, chrome, safari中设置相应的代理服务,指向本地的8000端口,这时在相应浏览器中访问比如BAIDU等网站,就会在该界面上显示本地HTTP请求的HEADER等信息,还有网站那一端获得的数据。这样会方便我们在开发过程中检查提交和返回的信息是否有效等。
    
    当然如果在IOS代码中,我们可以这样用它,比如使用第三方开源软件ASIHTTPRequest时,设置相应的代理字段:

// 手动设置代理服务器
NSURL *url = [NSURL URLWithString:@"http://www.baidu.com"];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setProxyHost:@"127.0.0.1"];
[request setProxyPort:8000];


    如果在python中,可以这样用:

#!/usr/bin/env python
import urllib
import sys
import getopt

shortargs = 'f:t'
opts, args = getopt.getopt( sys.argv[1:], shortargs )
port = "8000"
if ( len( sys.argv ) == 2 ):
    port = args[0]
try:
    proxy = {"http":"http://127.0.0.1:"+ port}
    f = urllib.urlopen("http://www.baidu.com", proxies = proxy)#加入代理设置
    print 'http header:/n', f.info()  
    print 'http status:', f.getcode()  
    print 'url:', f.geturl()  
    for line in f:  
        print line,  
    f.close()  
except:
    print "proxy fails!"
   

    接下来是关于信息:
   

    最后就是卸载功能,如下:
   

   
    
    
    好了,今天的内容就到这里的,如果大家有什么想法可以提出来,以便我进一步完善。
    
    源码下载地址:https://github.com/daizhenjun/HRXcodePlugin
    
    安装包下载:https://files.cnblogs.com/daizhj/HRPlugin.dmg.zip