Luận án tiến sĩ: Mã hóa ngôn ngữ phần mềm - Jennifer Maher
Iowa State University
Rhetoric and Professional Communication
Ẩn danh
Luận án
Năm xuất bản
Số trang
253
Thời gian đọc
38 phút
Lượt xem
0
Lượt tải
0
Phí lưu trữ
50 Point
Mục lục chi tiết
ABSTRACT
1. Chapter One: The Discursive Coding of Software
1.1. A Short History of Software
1.2. The Symbolic power of the Software Programming culture
1.3. Needs My Research Addresses
1.4. The Relationship between Discourse and Culture
1.5. Overview of Chapters
2. Chapter Two: Theory, Framework, and Methods
2.1. Theories of Practice
2.2. Critiques of Theories of Practice
2.3. The Spatio-Temporal Framework
2.3.1. Time as Temporal Orientations to the Past, Future, and Present
2.3.2. Space as Social Positionings
2.4. Methods and Choice of Texts
2.4.1. Iteration and Synthesis of Software Literature: Chapter Three
2.4.2. Projectivity and Ideological Analysis: Chapters Four and Five
2.4.3. Practical Evaluation and Genre Analysis: Chapter Six
3. Chapter Three: The Reactivation of Iterative Social Practices
3.1. The Practice of Programming as Knowledge Work
3.2. Instrumentalist Talk about Coding Issues
3.3. The Discursive Practice of Evangelism
3.4. The Creation of Functional Differences in Software
3.4.1. Established Software Technology
3.4.2. Disruptive Software Technology
4. Chapter Four: An Ideological Analysis Of the Encoding of Software
4.1. Stories of Software
4.1.1. The Entrepreneurial Narrative of Gates and the Professionalization of PC Hobbyists
4.1.2. The Idealistic Narrative of Stallman and the Free Software Movement
4.1.3. The Pragmatic Narrative
4.2. The Evolution of the Competing Ideological Trajectories
4.2.1. Software as a Commodity: Gates’ Evangelism
4.2.2. Software as Morality: Stallman’s Evangelism
4.2.3. Software as a Tool: Torvalds’ Evangelism
5. Chapter Five: Imagining Software Through Identity in Competing Communities of the Software Programming Culture
5.1. Identity in the Network Society
5.2. Identity in the Software Programming culture
5.3. The Legitimizing Identity and the Proprietary Software Industry
5.4. The Resistance Identity and the Free Software and Open Source Communities
5.4.1. The Free Software Community as a Resistant/would-be-Project Identity
6. Chapter Six: Reconfiguring Copyright and Software Licensing Agreements as Strategic Deliberative Action
6.1. The Generic Application of Software Licensing Agreements
6.2. Copying and Distribution
6.3. Enforcing Software Licensing Compliance
6.3.1. Enforcing the EULA
6.3.2. Compliance and the GNU GPL
6.3.3. Compliance and the OSD
7. Chapter Seven: Toward a Digital Literacy
Tóm tắt nội dung
I. Mã Hóa Ngôn Ngữ Phần Mềm Khái Niệm Cốt Lõi
Phần mềm đã trở thành phần không thể thiếu trong cuộc sống hàng ngày. Nghiên cứu về mã hóa ngôn ngữ phần mềm khám phá cách thức phần mềm được cấu tạo thông qua các thực hành xã hội. Quá trình này không chỉ định hình phần mềm mà còn định hình người dùng. Lexical analysis và tokenization đóng vai trò nền tảng trong việc phân tích cấu trúc ngôn ngữ lập trình. Abstract syntax tree biểu diễn cấu trúc logic của mã nguồn. Compiler design và interpreter chuyển đổi ngôn ngữ cấp cao thành mã máy. Code editor và IDE cung cấp môi trường phát triển tích hợp. Semantic analysis đảm bảo tính đúng đắn về mặt ngữ nghĩa. Parsing xử lý cấu trúc cú pháp của mã nguồn. Syntax highlighting cải thiện khả năng đọc code. Nghiên cứu này phân tích mối quan hệ giữa ổn định và thay đổi trong văn hóa lập trình phần mềm.
1.1. Văn Hóa Lập Trình Phần Mềm
Văn hóa lập trình phần mềm là cộng đồng những người thiết kế và điều chỉnh phần mềm. Cộng đồng này sử dụng các thực hành xã hội để tạo ra ý nghĩa. Compiler design và interpreter là công cụ chính trong quá trình này. IDE và code editor hỗ trợ quy trình phát triển. Syntax highlighting giúp phân biệt các thành phần code. Lexical analysis phân tích từ vựng của ngôn ngữ lập trình. Tokenization chia nhỏ code thành các token cơ bản. Parsing xây dựng cấu trúc cú pháp từ các token. Abstract syntax tree biểu diễn mối quan hệ giữa các phần tử. Semantic analysis kiểm tra tính hợp lệ về ngữ nghĩa.
1.2. Sức Mạnh Biểu Tượng Của Code
Code mang sức mạnh biểu tượng vượt xa chức năng kỹ thuật. Ngôn ngữ lập trình phản ánh giá trị văn hóa và xã hội. Syntax highlighting làm nổi bật cấu trúc ý nghĩa. Lexical analysis tiết lộ các mẫu ngôn ngữ. Tokenization phân tách ý nghĩa thành đơn vị nhỏ. Parsing kết nối các đơn vị thành cấu trúc. Abstract syntax tree tổ chức mối quan hệ logic. Compiler design quyết định cách biên dịch ý nghĩa. Interpreter thực thi ý nghĩa trực tiếp. Code editor và IDE định hình cách lập trình viên tương tác. Semantic analysis đảm bảo tính nhất quán ý nghĩa.
1.3. Mối Quan Hệ Giữa Diễn Ngôn Và Văn Hóa
Diễn ngôn và văn hóa lập trình có mối liên hệ mật thiết. Ngôn ngữ lập trình phản ánh và tạo ra văn hóa. Syntax highlighting thể hiện quy ước văn hóa. Lexical analysis phát hiện các mẫu ngôn ngữ văn hóa. Tokenization chia nhỏ các đơn vị ý nghĩa văn hóa. Parsing kết nối các thành phần văn hóa. Abstract syntax tree cấu trúc hóa tri thức văn hóa. Compiler design mã hóa giá trị văn hóa. Interpreter thực thi các thực hành văn hóa. Code editor và IDE phản ánh ưu tiên văn hóa. Semantic analysis kiểm tra tính hợp lệ văn hóa.
II. Lý Thuyết Thực Hành Và Khung Phân Tích Code
Lý thuyết thực hành cung cấp nền tảng để hiểu mã hóa phần mềm. Khung thời gian-không gian định hướng phân tích. Lexical analysis xác định các đơn vị từ vựng cơ bản. Tokenization chuyển đổi text thành tokens. Parsing xây dựng cấu trúc từ tokens. Abstract syntax tree biểu diễn cấu trúc phân cấp. Compiler design tối ưu hóa quá trình biên dịch. Interpreter thực thi code theo thời gian thực. Code editor hỗ trợ viết code hiệu quả. IDE tích hợp nhiều công cụ phát triển. Semantic analysis kiểm tra ý nghĩa ngữ cảnh. Syntax highlighting cải thiện trải nghiệm coding. Phương pháp này kháng lại chủ nghĩa nhị nguyên khách quan/chủ quan.
2.1. Khung Thời Gian Không Gian
Khung thời gian-không gian tổ chức phân tích theo hai chiều. Thời gian phản ánh định hướng quá khứ, hiện tại, tương lai. Không gian thể hiện vị trí xã hội. Lexical analysis hoạt động trong không gian từ vựng. Tokenization diễn ra theo thời gian tuyến tính. Parsing kết nối các mốc thời gian. Abstract syntax tree tạo không gian cấu trúc. Compiler design tối ưu cho thời gian biên dịch. Interpreter xử lý theo thời gian thực. Code editor cung cấp không gian làm việc. IDE mở rộng không gian phát triển. Semantic analysis kiểm tra trong ngữ cảnh thời gian. Syntax highlighting định vị trong không gian visual.
2.2. Phương Pháp Phân Tích Lịch Sử
Phân tích lịch sử tiết lộ sự phát triển của thực hành lập trình. Lịch sử ngôn ngữ lập trình phản ánh thay đổi văn hóa. Lexical analysis phát triển theo thời gian. Tokenization trở nên tinh vi hơn. Parsing áp dụng thuật toán mới. Abstract syntax tree mở rộng khả năng biểu diễn. Compiler design cải thiện hiệu suất. Interpreter tăng tốc độ thực thi. Code editor thêm tính năng mới. IDE tích hợp công cụ hiện đại. Semantic analysis mở rộng phạm vi kiểm tra. Syntax highlighting phát triển theo chuẩn mới.
2.3. Phân Tích Thể Loại Và Đánh Giá
Phân tích thể loại xem xét các loại văn bản lập trình. Đánh giá thực tiễn đo lường hiệu quả. Lexical analysis phân loại từ vựng. Tokenization nhận dạng loại token. Parsing phân biệt cấu trúc thể loại. Abstract syntax tree biểu diễn đặc điểm thể loại. Compiler design tối ưu cho từng loại. Interpreter xử lý theo đặc thù thể loại. Code editor hỗ trợ nhiều ngôn ngữ. IDE cung cấp template thể loại. Semantic analysis kiểm tra quy tắc thể loại. Syntax highlighting điều chỉnh theo ngôn ngữ.
III. Thực Hành Lập Trình Như Công Việc Tri Thức
Lập trình là công việc tri thức đòi hỏi kỹ năng cao. Thực hành này kết hợp tư duy và kỹ thuật. Lexical analysis phân tích cấu trúc ngôn ngữ. Tokenization chia code thành đơn vị xử lý. Parsing xây dựng cây cú pháp. Abstract syntax tree tổ chức tri thức. Compiler design áp dụng lý thuyết máy tính. Interpreter thực thi logic chương trình. Code editor cung cấp môi trường làm việc. IDE tích hợp công cụ tri thức. Semantic analysis đảm bảo tính đúng đắn. Syntax highlighting hỗ trợ nhận thức. Các nhà lập trình tạo ra và chia sẻ tri thức qua code. Evangelism truyền bá kiến thức và công nghệ mới.
3.1. Công Nghệ Phần Mềm Đã Thiết Lập
Công nghệ đã thiết lập có vị trí ổn định trong thị trường. Các công cụ này đã được kiểm chứng qua thời gian. Lexical analysis sử dụng phương pháp truyền thống. Tokenization áp dụng quy tắc chuẩn. Parsing dựa trên thuật toán đã biết. Abstract syntax tree theo cấu trúc quen thuộc. Compiler design tuân theo nguyên lý kinh điển. Interpreter sử dụng kỹ thuật đã chứng minh. Code editor cung cấp tính năng cơ bản. IDE bao gồm công cụ tiêu chuẩn. Semantic analysis kiểm tra theo quy tắc truyền thống. Syntax highlighting theo màu sắc quen thuộc.
3.2. Công Nghệ Phần Mềm Đột Phá
Công nghệ đột phá thách thức chuẩn mực hiện tại. Các công cụ mới mang lại cách tiếp cận khác biệt. Lexical analysis áp dụng kỹ thuật mới. Tokenization sử dụng thuật toán tiên tiến. Parsing thử nghiệm phương pháp sáng tạo. Abstract syntax tree mở rộng khả năng biểu diễn. Compiler design tối ưu theo hướng mới. Interpreter tăng tốc độ thực thi. Code editor thêm tính năng đổi mới. IDE tích hợp công nghệ tiên tiến. Semantic analysis mở rộng phạm vi kiểm tra. Syntax highlighting áp dụng chuẩn mới.
3.3. Thực Hành Evangelism Trong Lập Trình
Evangelism là thực hành truyền bá công nghệ và ý tưởng. Lập trình viên chia sẻ kiến thức qua nhiều kênh. Lexical analysis được giảng dạy rộng rãi. Tokenization được giải thích chi tiết. Parsing được trình bày qua ví dụ. Abstract syntax tree được minh họa trực quan. Compiler design được thảo luận trong cộng đồng. Interpreter được so sánh và đánh giá. Code editor được giới thiệu và hướng dẫn. IDE được khuyến nghị cho người mới. Semantic analysis được chia sẻ qua tài liệu. Syntax highlighting được tùy chỉnh và chia sẻ.
IV. Phân Tích Tư Tưởng Trong Mã Hóa Phần Mềm
Mã hóa phần mềm chứa đựng các tư tưởng cạnh tranh. Ba câu chuyện chính định hình ngành công nghiệp. Lexical analysis phản ánh giá trị tư tưởng. Tokenization mã hóa ưu tiên văn hóa. Parsing cấu trúc hóa niềm tin. Abstract syntax tree tổ chức hệ tư tưởng. Compiler design thể hiện triết lý kỹ thuật. Interpreter thực thi nguyên tắc văn hóa. Code editor phản ánh giá trị cộng đồng. IDE tích hợp quan điểm khác nhau. Semantic analysis kiểm tra tính nhất quán tư tưởng. Syntax highlighting thể hiện bản sắc văn hóa. Gates đại diện cho chủ nghĩa doanh nhân. Stallman thể hiện chủ nghĩa lý tưởng. Torvalds mang tính thực dụng.
4.1. Câu Chuyện Doanh Nhân Của Gates
Gates chuyên nghiệp hóa phần mềm PC. Ông coi phần mềm là hàng hóa thương mại. Lexical analysis phục vụ mục đích thương mại. Tokenization tối ưu cho sản phẩm. Parsing hướng đến hiệu suất. Abstract syntax tree tối ưu cho thị trường. Compiler design tăng lợi thế cạnh tranh. Interpreter cải thiện trải nghiệm người dùng. Code editor bán như sản phẩm. IDE đóng gói thành suite. Semantic analysis đảm bảo chất lượng sản phẩm. Syntax highlighting tạo giá trị thương mại. Evangelism quảng bá sản phẩm và dịch vụ.
4.2. Câu Chuyện Lý Tưởng Của Stallman
Stallman khởi xướng phong trào phần mềm tự do. Ông coi phần mềm là vấn đề đạo đức. Lexical analysis phải minh bạch. Tokenization cần mở và tự do. Parsing theo nguyên tắc cộng đồng. Abstract syntax tree chia sẻ công khai. Compiler design phải mã nguồn mở. Interpreter tôn trọng tự do người dùng. Code editor phát triển cộng đồng. IDE xây dựng bởi tình nguyện viên. Semantic analysis đảm bảo tự do. Syntax highlighting hỗ trợ cộng đồng. Evangelism truyền bá giá trị đạo đức.
4.3. Câu Chuyện Thực Dụng Của Torvalds
Torvalds coi phần mềm như công cụ. Ông tập trung vào tính thực tiễn. Lexical analysis phải hiệu quả. Tokenization cần đơn giản. Parsing tối ưu cho hiệu suất. Abstract syntax tree dễ sử dụng. Compiler design hướng đến kết quả. Interpreter chạy nhanh và ổn định. Code editor đơn giản nhưng mạnh. IDE tích hợp công cụ cần thiết. Semantic analysis kiểm tra thực tế. Syntax highlighting hỗ trợ làm việc. Evangelism chia sẻ giải pháp thực tiễn.
V. Bản Sắc Trong Cộng Đồng Lập Trình Phần Mềm
Bản sắc định hình cách lập trình viên tương tác. Cộng đồng tạo ra các bản sắc khác nhau. Lexical analysis phản ánh bản sắc cộng đồng. Tokenization mã hóa giá trị nhóm. Parsing cấu trúc hóa niềm tin chung. Abstract syntax tree tổ chức tri thức tập thể. Compiler design thể hiện ưu tiên nhóm. Interpreter thực thi chuẩn mực cộng đồng. Code editor phản ánh văn hóa nhóm. IDE tích hợp công cụ cộng đồng. Semantic analysis kiểm tra theo quy tắc nhóm. Syntax highlighting theo phong cách cộng đồng. Bản sắc hợp pháp hóa trong ngành độc quyền. Bản sắc kháng cự trong phần mềm tự do. Bản sắc dự án trong mã nguồn mở.
5.1. Bản Sắc Hợp Pháp Hóa
Ngành phần mềm độc quyền tạo bản sắc hợp pháp. Bản sắc này gắn với thể chế chính thống. Lexical analysis theo chuẩn công nghiệp. Tokenization tuân thủ quy định. Parsing áp dụng best practices. Abstract syntax tree theo mô hình doanh nghiệp. Compiler design đáp ứng yêu cầu thị trường. Interpreter tối ưu cho khách hàng. Code editor bán theo giấy phép. IDE cung cấp như dịch vụ. Semantic analysis đảm bảo tuân thủ. Syntax highlighting theo chuẩn doanh nghiệp.
5.2. Bản Sắc Kháng Cự
Phần mềm tự do tạo bản sắc kháng cự. Bản sắc này thách thức hệ thống hiện tại. Lexical analysis phải tự do. Tokenization không bị kiểm soát. Parsing theo nguyên tắc cộng đồng. Abstract syntax tree chia sẻ công khai. Compiler design mã nguồn mở. Interpreter tôn trọng tự do. Code editor phát triển cộng đồng. IDE xây dựng tập thể. Semantic analysis đảm bảo tự do. Syntax highlighting hỗ trợ mọi người.
5.3. Bản Sắc Dự Án
Mã nguồn mở tạo bản sắc dự án. Bản sắc này hướng đến mục tiêu chung. Lexical analysis hiệu quả và mở. Tokenization đơn giản và linh hoạt. Parsing tối ưu và minh bạch. Abstract syntax tree dễ hiểu và mở rộng. Compiler design cân bằng hiệu suất và tự do. Interpreter nhanh và đáng tin cậy. Code editor mạnh mẽ và miễn phí. IDE tích hợp và cộng tác. Semantic analysis thực tế và chính xác. Syntax highlighting linh hoạt và tùy chỉnh.
VI. Bản Quyền Và Thỏa Thuận Cấp Phép Phần Mềm
Cấp phép phần mềm định hình quyền sử dụng. Thỏa thuận pháp lý kiểm soát phân phối. Lexical analysis trong văn bản pháp lý. Tokenization của điều khoản hợp đồng. Parsing cấu trúc thỏa thuận. Abstract syntax tree của quyền và nghĩa vụ. Compiler design và quyền sở hữu trí tuệ. Interpreter thực thi điều khoản. Code editor và giấy phép sử dụng. IDE và thỏa thuận người dùng cuối. Semantic analysis của điều khoản pháp lý. Syntax highlighting trong tài liệu pháp lý. EULA kiểm soát phần mềm độc quyền. GNU GPL bảo vệ phần mềm tự do. OSD định nghĩa mã nguồn mở.
6.1. Sao Chép Và Phân Phối
Quyền sao chép và phân phối là trọng tâm. Các giấy phép khác nhau có quy định riêng. Lexical analysis của điều khoản phân phối. Tokenization quyền sao chép. Parsing cấu trúc quyền hạn. Abstract syntax tree của giấy phép. Compiler design và quyền biên dịch. Interpreter và quyền thực thi. Code editor và quyền chỉnh sửa. IDE và quyền tích hợp. Semantic analysis của hạn chế. Syntax highlighting của điều khoản quan trọng.
6.2. Thực Thi Tuân Thủ EULA
EULA là thỏa thuận người dùng cuối. Thực thi EULA bảo vệ quyền nhà phát hành. Lexical analysis của EULA. Tokenization điều khoản sử dụng. Parsing cấu trúc hợp đồng. Abstract syntax tree của nghĩa vụ. Compiler design bị giới hạn bởi EULA. Interpreter tuân thủ hạn chế. Code editor theo điều khoản. IDE tôn trọng giấy phép. Semantic analysis đảm bảo tuân thủ. Syntax highlighting cảnh báo vi phạm.
6.3. Tuân Thủ GNU GPL Và OSD
GNU GPL đảm bảo tự do phần mềm. OSD định nghĩa mã nguồn mở. Lexical analysis của GPL và OSD. Tokenization quyền tự do. Parsing cấu trúc giấy phép mở. Abstract syntax tree của quyền người dùng. Compiler design phải mở mã nguồn. Interpreter chia sẻ tự do. Code editor tuân thủ GPL. IDE hỗ trợ OSD. Semantic analysis đảm bảo tự do. Syntax highlighting thể hiện mã nguồn mở.
Tải xuống file đầy đủ để xem toàn bộ nội dung
Tải đầy đủ (253 trang)Từ khóa và chủ đề nghiên cứu
Câu hỏi thường gặp
Luận án tiến sĩ phân tích mã hóa ngôn ngữ phần mềm, khám phá mối quan hệ giữa ổn định và thay đổi trong văn hóa lập trình và ý thức hình thái.
Luận án này được bảo vệ tại Iowa State University. Năm bảo vệ: 2006.
Luận án "Mã hóa ngôn ngữ phần mềm: Ổn định và thay đổi" thuộc chuyên ngành Rhetoric and Professional Communication. Danh mục: Mạng Máy Tính & Truyền Thông.
Luận án "Mã hóa ngôn ngữ phần mềm: Ổn định và thay đổi" có 253 trang. Bạn có thể xem trước một phần tài liệu ngay trên trang web trước khi tải về.
Để tải luận án về máy, bạn nhấn nút "Tải xuống ngay" trên trang này, sau đó hoàn tất thanh toán phí lưu trữ. File sẽ được tải xuống ngay sau khi thanh toán thành công. Hỗ trợ qua Zalo: 0559 297 239.