汪永松:浅谈《J2ME手机高级编程》的写作经历

如何处理动态语言(Python / JS)的“隐形”调用链? 本文揭示动态语言(Python/JS)中静态AST解析导致调用链“断链”的核心问题,提出通过运行时追踪补全图谱的解决方案。基于Code-Graph-RAG的cgr trace机制,分别利用pytest插件与V8 Profiler捕获真实调用路径,将动态边合并至静态图谱,并在权重体系中提升动态边优先级。实践表明,该方法可显著提升图谱覆盖率,实现“结构+行为”双视角理解代码,为MCP与Rerank系统提供可靠支持。 阅读详情

文本Tag: J2ME 移动开发 移动开发平台

 

【IT168 专稿】拙著《J2ME手机高级编程》终于出版了!欣慰之余,笔者总觉得是不是该把这段经历进行一下简单地总结,好歹是自己的第一次尝试。恰好遇到it168的编辑聊到移动开发,所以趁此机会,借it168的空间把这段时间进行一下梳理。

  汪永松的专家专栏:http://tech.it168.com/jd/2007-12-28/200712281605350.shtml

 

  笔者真正开始在J2ME平台上写第一个Java小程序“MyFirst”并移植到的自己的那部N5310已经是在08年8月初的时候,而书稿目录确定下来是在12月末(笔者戏称为“08年的圣诞节礼物”,“07年的圣诞节礼物”是IT168的专栏开栏)。其间,白天还要干好本职工作,所以手机相关的开发和写作只有在工作之余,利用休息时间来进行。在这些自行的开发工作中,实机调试和写作是最花费时间的地方,记得有好几天都忙到凌晨1、2点。

  在前后不到半年的时候能够总结出这么多的开发经历并积累到这么多的开发经验,笔者觉得除了实用的效果驱使出强烈的开发兴趣之外,恐怕和自己平时的学习方法和经验积累不无关系。下面,笔者将会就自己在这段时间里的一些行为方式和读者朋友们进行探讨。

  1.快速学习——举一反三

  古语有云:“察已则可以知人,察今则可以知古”,以自己所学过的来启发没有学过的,这就是笔者经常使用的一种学习方式。在学习J2ME平台的MIDlet、Xlet以及Android平台的Activity的时候,笔者通过联想到J2SE平台的Applet,这些无非都是平台定义的框架,没有必要在初学之初钻牛角尖儿;学习蓝牙通信的时候,笔者联想到Java RMI(远程方法调用),服务端为了客户端能够找到它,必须暴露出它的一些设置,两端必须共享一些公共的定义;学习Java AWT的事件处理时借鉴对Windows消息队列的理解,一切疑云也是一扫而光。这样的例子举不胜举。

  笔者大学里最先接触到的是Turbo C,脑子里整天的都是指针、文件、图形库。最深的就是DOS中断,什么21号(常规)、10号(显示器)、13号(磁盘)、16号(键盘)、33号(鼠标)中断等。因为太多没有别的内容可以联想,所以学得比较辛苦,相信读者朋友们是否有同感。

  幸运的是,笔者对于OO的起步并不是从C++,也不是Java,而是从JavaScript,通过在IE上写JavaScript小程序,笔者就顺利地理解到了什么是window对象、什么是document对象。等到再学C++,就完全不用在黑灯瞎火(Borland C++似乎也是一个黑乎乎的屏幕)中绞尽脑汁地想什么是对象了。

  俗话说:“万事开头难”,开头之难难的在于没有借鉴、没有启发。但是一旦等读者掌握一门语言、一种技术、一块领域,就请您给它装上联想的翅膀,让它更好地用于引导您穿越那些您还没有接触到的语言、技术和领域。

  2.提升学习的效果——学以致用

  从C到HTML、JavaScript,再到Win32、C++、Java,笔者的技术方向似乎并不是很明确。但是其中有一条贯穿的主线就是:应用。如果说学C还是在半主动半被动的状态下,但是当笔者接触到JavaScript后就开始对编程产生了浓厚的兴趣,因为JavaScript可以在网页上很直接地看到效果:事件响应、UI提示、表单检查……相比用C在DOS下写黑咕隆咚的小程序,感觉应用的视野一下子被打开了。再到后面的Win32、Java,从应用程序的层面到操作系统、从实体平台到虚拟化平台……就像跳伞的时候,“嘭”的一声,整个计算机应用的视野无限的呈现在笔者眼前。

  至今还令笔者引以为豪的一个开发案例是自行开发了一款支持JSP的HTTP服务器()。其包含了HTTP、MIME、套接字通信、多线程、进程间通信、CGI、ClassLoader、字符编码/解码等知识点。汇集了笔者在Win32、HTML、CSS、JavaScript、Java等领域的应用经验,也是第一次让笔者感受到了应用不分语言、不分平台。通过这种综合性的应用,能够让读者的知识层次跟深、知识的关联性更紧密,从而更容易形成解决方案。

  3.建立自己的知识库——积累

  现身说法,笔者有4个封皮是透明的纸质笔记本,封面上写着这本笔记的主题内容,例如:Win32、Java、数据库等。其中的内容包括:某函数的用法和注意点、解决特定问题的思路和技巧、实际案例的开发步骤和要点等。等到笔者再次遇到相同或类似的应用环境或问题时,只需要简要参考一下笔记本即可迅速找到解决该问题的思路。而且如果想到更好的思路或解决方案,笔者还会将这些更好的实践添加到原来的笔记之中,从而形成更加成熟和完备的提案。

  通过这些积累,笔者在组织《J2ME手机高级编程》一书的内容的时候,基本上感觉是左右逢源,一气呵成。从网友读者的反馈看来,书中的那些实践心得和技巧要点,确实让该书增加了不少可圈可点之处。

  4.坚持应该坚持的

  开发的驱动力很大程度上来自于个人兴趣或目的性。就笔者自己而言,有时就会因一时的兴趣或灵感就可以废寝忘食、锲而不舍地进行编码、调试,直到自己的想法得到验证或者解决了悬而未决的难题。在开发过程中,笔者可以收获到新的结论、经验和成果。

  与之不同的是,写作的目的更多的是为了总结、与读者分享经验。作者往往为了说清楚一个案例,不得不要把整个开发过程的始末都要梳理一遍,并根据目标读者的层次来调整解说的详细程度。这个梳理的过程对于大多数开发人员来说是可能是枯燥至极的,所以需要更多的耐心和坚持。实际上,总结或者分享自己的经验,不仅可以帮助读者少走弯路,解决实际问题,而且也可以通过读者的反馈来发现自己的思维瓶颈,提升自己的思维能力。

  结束语

  就像大学毕业刚参加工作那阵,笔者经历了从学生到职业人的角色转变,这次笔者又经历了一次从开发人员到作者的角色转变。笔者相信,只要读者朋友们能够掌握有效的学习方法,勤于在实践中积累经验,一定能够快速地丰富自己,适应各种各样的角色转变。 

j2me手机高级编程 主要是J2ME手机编程中的先进技术,如无线通信,游戏开发,电子地图浏览.播放器, 持久化应用,移动商务应用,XML模型应用 立即下载

相关推荐

J2ME 手机程序开发

2第二章 高级界面开发1基本界面和Command(2),教程提供,(全集待续)请持续关注

《J2ME手机高级编程》实机:诺基亚 5310(XpressMusic)

《J2ME手机高级编程》开发用实机 Nokia 5310 BlueNokia 5310 Red

Foolstudio的专栏 1256

Zabbix 简介、优缺点、基础原理

(8条消息) Zabbix 的基础概念、原理和架构_Lee木木的博客-优快云博客_zabbix架构类型Zabbix 的基础概念、原理和架构_Lee木木的博客-优快云博客_zabbix架构类型 --------------------------------------------------------------------------------------------------------------------------- 一、Zabbix 简介 Zabbix是由A...

weixin_50196615的博客 2037

拙著《J2ME手机高级编程》新近上架

 书名:《J2ME手机高级编程》作者:汪永松出版社:机械工业出版社ISBN:978-7-111-27189-5出版日期:2009年6月定价:35.00元==== 内容提要:        本书从J2ME手机平台的当前主流应用和发展趋势出发,立足实际的开发案例,介绍了J2ME手机平台开发的实用技术和应用模式。本书的内容主要包括:手机文件系统、网络通信、无线通信(短

Foolstudio的专栏 837

Xlinx PG151 除法器IP 笔记

对Xlinx 除法器IP PG151中部分内容记录备忘。

weixin_50515160的博客 2528

Android-S无线模块前瞻

WiFi - mainlane非强制 S 采用反射的方法直接加载wifiservice,直接hook在systemserver上,无编译依赖。gms可以动态替换wifi服务。 R 采用直接启动service的方式,wifiservice仍然map在systemserver上。 WiFi - 11ad接口支持 11ad被wifi联盟商业化为WIGIG,提供短距的60GHZ载波,理论速度为当前5G 11ac的6倍。市面上基本没有手机支持,需要独立的芯片支撑此功能。 传输距离为3m以内,外界d.

头铁的伦的博客 1044

WEB开发的套路——优雅的编程

(1)将数据和UI模板通过配置化的方式进行定义,方便数据内容与UI的调整(无需进入部署修改JSP); (2)简化了数据的处理,页面获取到的已经是填充好的内容,页面代码简洁,思路清晰。 (3)数据定义采用集中数据管理,支持SQL和存储过程,无需操心资源管理,效率高。

foo1st的专栏 813

单细胞数据pseudobulks差异分析实战:从聚合到DESeq2

本文详细介绍了单细胞转录组数据分析中pseudobulks(伪散装)方法的实战流程。通过将同一样本的同类型细胞表达值聚合,模拟Bulk RNA-seq数据,再利用DESeq2进行稳健的差异基因分析。该方法有效降低了单细胞数据的技术噪音,特别适用于样本量有限但追求结果稳定性的研究场景,并提供了完整的R代码实现与结果解读指南。

sea99的博客 761

资深码农谈编程——编程岁月

发表说明:本文原名为《编程岁月》,为博主原创,2013年被某期刊收录,现分享于优快云。 汪永松(1980年10月—),2012年6月毕业于武汉大学测绘工程专业,硕士。具有多年IT行业开发及管理经验,现为重庆车杰盟科技有限公司高级产品经理。 引言     屈指算来,笔者从大二开始接触计算机到如今已经过十多载,所以不夸张地说,计算机已经改变或者铸就了笔者的人生轨迹:首先是让笔者从财会专

foo1st的专栏 3797

QDMA工程搭建/windows驱动编译与性能测试

请注意,根据您的目标操作系统,您可能需要在windows启动配置中启用测试签名的驱动程序,以便启用此驱动程序的安装。右键单击设备,选择更新驱动程序软件,然后选择构建的QDMA驱动程序的文件夹(通常为。创建一个新工程,在IP Catalog中搜索QDMA,双击创建qdma ip核。驱动程序安装安装驱动程序最简单的方法是通过Windows的“设备管理器”。如果系统提示未经验证的驱动程序发布者,请选择无论如何安装此驱动程序软件。本节主要介绍QDMA驱动在Windows系统的源文件、编译和安装过程。

qq_28455081的博客 2288

手把手教你学Simulink——四开关 Buck‑Boost(FSBB)变换器的无缝模式切换仿真

本文详细介绍了四开关Buck-Boost(FSBB)变换器的Simulink仿真方法,重点解决模式切换时的直通风险和输出电压波动问题。通过统一电压PI控制、迟滞比较模式仲裁(Buck/Boost/Pass-Through)和200ns死区设计,实现了Vin从26V到22V变化时Vout稳定在12V±0.15V。关键步骤包括:搭建功率级电路、Stateflow模式判断、PI控制器输出占空比映射(Buck模式D≈Vo/Vin,Boost模式D≈1-Vo/Vin),以及带死区的PWM信号分配。仿真验证了切换过程中

MHD0815的博客 118

Web 版翻译者资料库

本项目是桌面版《翻译者资料库》的 Web 移植版,基于 Spring Boot 3.3、Thymeleaf、Bootstrap 5.3 与 MySQL 8.0 构建。它面向翻译写作提供资料、词汇、句库、文本工具、对照制作、查找、备份恢复及旧库迁移等功能,完整继承桌面版核心业务规则,支持一键启动与离线访问。

howard2005的专栏 181

基于注意力机制的多源异构数据推理融合技术

在当今数字化时代,各种传感器、设备和系统不断产生海量的数据,这些数据具有多源异构的特点,包括不同类型(如文本、图像、音频、视频等)、不同格式(如结构化、半结构化、非结构化)和不同来源(如物联网设备、社交媒体、企业数据库等)。多源异构数据的存在为信息的获取和利用带来了巨大的挑战,但同时也蕴含着丰富的价值。基于注意力机制的多源异构数据推理融合技术旨在通过有效的方法将这些多源异构数据进行整合和处理,挖掘数据背后的潜在信息,实现更准确的推理和决策。

AI 原生应用开发的博客 910

副队长BootStrap5探究(2)--按钮与按钮组

本文系统讲解Bootstrap 5按钮组件的使用与底层原理。通过CDN引入框架,掌握btn基础类及primary、success等主题色应用,学习轮廓按钮(btn-outline-*)、尺寸控制(btn-lg/sm)、块级布局(d-block)和禁用状态(disabled)等实用功能。结合源码解析,深入理解其基于CSS的圆角、过渡动画、伪类交互实现机制,实现“快速上手+原理掌握”的双重目标,助力前端技能进阶。

编程副队长 697

精读204页华为的流程管理(文末附下载链接)

链接:https://pan.baidu.com/s/1eEwdBR5c0PIxkOrNhDZcGg?pwd=wha2 提取码:wha2 复制这段内容后打开百度网盘手机App,操作更方便哦。,以提升企业运营效率和竞争力,同时解决了诸多业务痛点,为华为的全球化发展提供了有力支撑。华为的流程管理对其发展起着关键作用,通过构建完善的流程体系,提升了企业运营效率与竞争力。华为的流程管理在企业发展中至关重要,其围绕。,并通过流程变革不断优化。在流程管理过程中,强调。构建了全面的流程体系。

cdfunlove的博客 283

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

SpringBoot「衣依」服装销售平台:144个Java文件180个接口,从挑衣服到收货评价整条链路都在

# SpringBoot「衣依」服装销售平台:144个Java文件180个接口,从挑衣服到收货评价整条链路都在 > 这是一套基于 Spring Boot 的服装销售平台源码,配套 `db.sql` 建表脚本,业务覆盖商品展示、购物车、订单流转、收货地址、订单评价、商品评论、在线客服、轮播图和资讯。形态是**前后台双端**:前台是顾客逛的商城,后台是管理员管的控制台。本文带你看清里面有什么、怎么跑

面朝大海 229

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

微信小程序-wxs

在微信开发者工具中右键创建.wxs后缀的文件。每个.wxs文件也是一个独立模块,同样使用导出内容。示例(文件return d;FOO: foo,bar: bar(外联定义参考官方文档)

dreams_dream的博客 379

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

汽车租赁系统(协同过滤算法、支付宝沙盒支付、 腾讯地图接入、WebSocket在线沟通、ECharts运营分析、三角色协同、还车费用处理)

本系统基于B/S架构,采用前后端分离设计,集成SpringBoot3、Vue2、MySQL等技术,实现用户、商家、管理员三角色协同管理。亮点包括:车型加权推荐与话题协同过滤算法提升个性化体验;支付宝沙盒支付、腾讯地图定位、WebSocket在线沟通保障流程闭环;还车费用智能计算与ECharts多维数据可视化助力运营分析,全面支持租车全生命周期管理。

paopaokaka_luck的博客 168

设计模式(unity游戏研发版)

当你使用图形用户界面类时通常会遇到一个问题。比如,你创建了自定义按钮类并允许客户端在按钮中注入自定义代码,这样当用户按下按钮时就会触发这些代码。观察者模式允许任何实现了订阅者接口的对象订阅发布者对象的事件通知。你可在按钮中添加订阅机制,允许客户端通过自定义订阅类注入自定义代码。在Unity中,这就像UnityEvent在Inspector中绑定多个回调。

m0_63330263的博客 122

实战项目:哈米音乐(前六章)

本文整理哈米音乐实战项目前六章核心知识点,涵盖技术选型、数据库建模、Maven聚合工程、MyBatis逆向工程、SSM架构整合、泛型反射抽取公共Dao与Service、文件流代码生成器,附核心易错点速查表,便于复习备考。

既然你都点开这里了,那可以给我点个关注吗?可以吗?可以吗? 272

【技术专题】JavaScript 网页技术 - JavaScript 流程控制

小锋老师推出《一天学会JavaScript(无废话版)》视频教程,涵盖基础语法、流程控制、函数、数组对象、DOM操作及ES6新特性。内容精炼,配套课件与源码打包下载,助力快速入门。重点讲解if/else、switch、for/while循环、for...of/in遍历及break/continue使用场景,并通过成绩判断实例演示实际应用。适合零基础学习者高效掌握核心技能。

java1234的博客 167

基于 FastAPI+LangChain+LangGraph+Agent+Vue3+MySQL 的房产数据采集与房价预测分析平台

本文介绍一个完整的「房产数据采集+AI房价预测」全栈项目,涵盖FastAPI异步后端、LangGraph Agent智能问答、爬虫采集、机器学习预测与Vue3前端,实现从数据采集到AI交互的闭环。项目融合多技术栈,具备真实业务场景与生产级设计(如降级策略、流式输出、多模型对比),兼具简历亮点与答辩演示优势,可系统性提升工程能力,并附高频面试题解析,是理想的技术综合实践项目。

深耕开发,专注编程实战。分享源码解析、项目搭建、问题排查笔记,沉淀技术,持续更新。 248

副队长BootStrap5探究(11)--单选框 radio

本文详解Bootstrap 5中单选框(radio)的使用与底层实现原理。通过引入Bootstrap CSS,掌握基础用法、默认选中、禁用状态及横向排列等特性。核心在于隐藏原生input,利用~兄弟选择器配合伪元素::before和::after绘制圆形外圈与实心圆点,实现统一视觉风格。重点解析了position、z-index、opacity及:checked状态控制等CSS技巧,巩固前端样式设计能力。

编程副队长 291
下一篇: 资深开发者谈NOKIA手机平台开发
foolstudio2
博客等级 码龄17年 2粉丝 4原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值