پیشنهاد فرادرس

دوره آشنایی با زبان های برنامه نویسی دانشگاه Washington

دسته بندی ها: دانشگاه واشینگتن ، سی پلاس پلاس ، آموزش جاوا (Java)

دوره-آشنایی-با-زبان-های-برنامه-نویسی-دا

در این دوره آموزشی با زبان های برنامه نویسی و اصول اولیه برنامه نویسی رایانه آشنا می شوید.

این دوره در دانشگاه Washington برگزار شده است.

سرفصل های دوره:

  • نصب و راه اندازی Emacs
  • نصب و راه اندازی SML
  • کار با آرایه ها
  • کار با بلوک ها
  • استفاده از بلوک
  • کار با زیرکلاس ها
  • آشنایی با Ruby
  • کار با کلاس ها و اشیاء
  • تعریف کلاس پویا
  • روش دودویی با عملکرد تجزیه
  • ارث بری چندگانه
  • کار با توابع
  • مقدمه زبان برنامه نویسی
  • لیست و تنظیمات انواع داده ها
  • کار با انواع دادهها
  • آموزش زبان Java
  • آموزش زبان C
  • تعریف انواع مختلف ماژول ها
  • ماژول ها برای مدیریت فضای نامی
  • تعریف جریان
  • و...

عنوان دوره: University of Washington Programming Languages

توضیحات:

1 - 1 - Installation Introduction (122)
1 - 2 - Emacs installation (227)
1 - 3 - SML installation (147)
1 - 4 - SML Mode installation (352)
10 - 1 - Section 7 Reading Notes
10 - 10 - Arrays (1113)
10 - 11 - Blocks (1134)
10 - 12 - Using Blocks (624)
10 - 13 - Procs (708)
10 - 14 - Hashes and Ranges (859)
10 - 15 - Subclassing (1011)
10 - 16 - Why Use Subclassing (716)
10 - 17 - Overriding and Dynamic Dispatch (1056)
10 - 18 - Method-Lookup Rules Precisely (1131)
10 - 19 - Dynamic Dispatch Versus Closures (938)
10 - 2 - Introduction to Ruby (1008)
10 - 20 - Optional Dynamic Dispatch Manually in Racket (1556)
10 - 3 - Classes and Objects (1237)
10 - 4 - Object State (1314)
10 - 5 - Visibility (839)
10 - 6 - A Longer Example (1219)
10 - 8 - Class Definitions are Dynamic (742)
10 - 9 - Duck Typing (728)
11 - 1 - Section 8 Reading Notes
11 - 10 - Optional Abstract Methods (851)
11 - 11 - Subtyping From the Beginning (1043)
11 - 12 - The Subtype Relation (820)
11 - 13 - Depth Subtyping (850)
11 - 14 - Optional Java_C Arrays (911)
11 - 15 - Function Subtyping (1117)
11 - 17 - Generics Versus Subtyping (816)
11 - 18 - Bounded Polymorphism (805)
11 - 2 - OOP Versus Functional Decomposition (1251)
11 - 3 - Adding Operations or Variants (1108)
11 - 4 - Binary Methods with Functional Decomposition (718)
11 - 5 - Double Dispatch (1446)
11 - 6 - Optional Multimethods (636)
11 - 7 - Multiple Inheritance (1018)
11 - 8 - Mixins (1152)
11 - 9 - Interfaces (733)
12 - 1 - Optional Course Content Wrapup (943)
12 - 2 - Optional MOOC Wrapup (939)
12 - 3 - Optional Meet the TAs (200)
2 - 1 - Section 1 Reading Notes
2 - 10 - Pairs and Other Tuples (916)
2 - 11 - Introducing Lists (1034)
2 - 12 - List Functions (1121)
2 - 13 - Let Expressions (751)
2 - 15 - Let and Efficiency (1010)
2 - 16 - Options (909)
2 - 17 - Booleans and Comparison Operations (700)
2 - 18 - Benefits of No Mutation (724)
2 - 19 - Optional Java Mutation (444)
2 - 2 - Course Introduction About the Course (1234)
2 - 20 - Pieces of a Language (602)
2 - 3 - Course Introduction About Programming Languages (1204)
2 - 4 - ML Variable Bindings and Expressions (1432)
2 - 5 - Rules for Expressions (913)
2 - 6 - The REPL and Errors (1210)
2 - 7 - Shadowing (649)
2 - 8 - Functions Informally (737)
2 - 9 - Functions Formally (856)
3 - 10 - Type Synonyms (619)
3 - 11 - Lists and Options are Datatypes (910)
3 - 12 - Polymorphic Datatypes (811)
3 - 13 - Each of Pattern Matching _ Truth About Functions (1430)
3 - 14 - A Little Type Inference (628)
3 - 15 - Polymorphic and Equality Types (800)
3 - 17 - More Nested Patterns (1043)
3 - 18 - Nested Patterns Precisely (635)
3 - 19 - Optional Function Patterns (340)
3 - 2 - Building Compound Types (534)
3 - 20 - Exceptions (747)
3 - 21 - Tail Recursion (944)
3 - 22 - Accumulators for Tail Recursion (739)
3 - 23 - Perspective on Tail Recursion (533)
3 - 3 - Records (825)
3 - 4 - Tuples as Syntactic Sugar (606)
3 - 5 - Datatype Bindings (839)
3 - 6 - Case Expressions (1050)
3 - 7 - Useful Datatypes (1122)
3 - 8 - Pattern Matching So Far (437)
3 - 9 - Another Expression Example (801)
5 - 1 - Section 3 Reading Notes
5 - 10 - Lexical Scope and Higher-Order Functions (737)
5 - 11 - Why Lexical Scope (1144)
5 - 12 - Closures and Recomputation (630)
5 - 13 - Fold and More Closures (1128)
5 - 14 - Closure Idiom Combining Functions (918)
5 - 15 - Closure Idiom Currying (1032)
5 - 16 - Partial Application (941)
5 - 17 - Currying Wrapup (640)
5 - 18 - Mutable References (807)
5 - 19 - Closure Idiom Callbacks (825)
5 - 2 - Introduction to First-Class Functions (750)
5 - 20 - Standard-Library Documentation (700)
5 - 21 - Optional Abstract Data Types With Closures (1114)
5 - 22 - Optional Closure Idioms Without Closures (448)
5 - 24 - Optional Java Without Closures (1208)
5 - 25 - Optional C Without Closures (1056)
5 - 3 - Functions as Arguments (840)
5 - 4 - Polymorphic Types and Functions as Arguments (757)
5 - 5 - Anonymous Functions (917)
5 - 6 - Unnecessary Function Wrapping (505)
5 - 7 - Map and Filter (856)
5 - 8 - Generalizing Prior Topics (901)
5 - 9 - Lexical Scope (722)
6 - 1 - Section 4 Reading Notes
6 - 10 - Signatures and Hiding Things (702)
6 - 11 - A Module Example (1106)
6 - 12 - Signatures for Our Example (1103)
6 - 13 - Signature Matching (403)
6 - 14 - An Equivalent Structure (638)
6 - 15 - Another Equivalent Structure (901)
6 - 16 - Different Modules Define Different Types (332)
6 - 17 - Equivalent Functions (841)
6 - 18 - Standard Equivalences (1001)
6 - 19 - Equivalence Versus Performance (600)-1
6 - 2 - Section Introduction (145)
6 - 3 - What is Type Inference (537)
6 - 4 - ML Type Inference (609)
6 - 5 - Type Inference Examples (1027)
6 - 6 - Polymorphic Examples (1052)
6 - 7 - Optional The Value Restriction and  Other Type-Inference Challenges (953)
6 - 8 - Mutual Recursion (945)
6 - 9 - Modules for Namespace Management (625)
7 - 1 - Optional Course-Motivation Introduction (556)
7 - 2 - Optional Why Study General PL Concepts (1030)
7 - 3 - Optional Are All PLs the Same (651)
7 - 4 - Optional Why Functional Languages (1115)
7 - 5 - Optional Why ML Racket and Ruby (1234)
8 - 1 - Section 5 Reading Notes
8 - 10 - Toplevel Bindings (454)
8 - 11 - Mutation with set (828)
8 - 12 - The Truth About Cons (746)
8 - 13 - mcons For Mutable Pairs (738)
8 - 14 - Delayed Evaluation and Thunks (1012)
8 - 15 - Avoiding Unnecessary Computations (648)
8 - 16 - Delay and Force (918)
8 - 17 - Using Streams (1010)
8 - 18 - Defining Streams (1049)
8 - 19 - Memoization (1017)
8 - 2 - Introduction to Racket (823)
8 - 20 - Macros The Key Points (852)
8 - 21 - Optional  Tokenization Parenthesization and Scope (730)
8 - 22 - Optional Racket Macros With define-syntax (925)
8 - 23 - Optional Variables Macros and Hygiene (1052)
8 - 24 - Optional More Macros Examples (912)
8 - 3 - Racket Definitions Functions Conditionals (1014)
8 - 4 - Racket Lists (907)
8 - 5 - Syntax and Parentheses (836)
8 - 6 - Parentheses Matter (Debugging Practice) (1050)
8 - 7 - Dynamic Typing (936)
8 - 8 - Cond (852)
8 - 9 - Local Bindings (1311)
9 - 1 - Section 6 Reading Notes
9 - 10 - Optional Are Closures Efficient (903)
9 - 11 - Racket Functions As Macros  For Interpreted Language (915)
9 - 12 - ML Versus Racket (853)
9 - 13 - What is Static Checking (1000)
9 - 14 - Soundness and Completeness (946)
9 - 15 - Weak Typing (939)
9 - 16 - Static Versus Dynamic Typing Part One (940)
9 - 17 - Static Versus Dynamic Typing Part Two (1347)
9 - 18 - Optional eval and quote (758)
9 - 2 - Section Introduction (208)
9 - 4 - Datatype-Programming in Racket With Structs (934)
9 - 6 - Implementing Programming Languages (1007)
9 - 7 - What Your Interpreter Can and Cannot Assume (1347)
9 - 8 - Implementing Variables and Environments (629)
9 - 9 - Implementing Closures (632)
lecture_slides_section1_10_lists
lecture_slides_section1_10_repl
lecture_slides_section1_11_list_functions
lecture_slides_section1_11_list_functions
lecture_slides_section1_12_let_expressions
lecture_slides_section1_12_let_expressions
lecture_slides_section1_13_nested_functions
lecture_slides_section1_13_nested_functions
lecture_slides_section1_14_let_efficiency
lecture_slides_section1_14_let_efficiency
lecture_slides_section1_15_options
lecture_slides_section1_15_options
lecture_slides_section1_16_booleans
lecture_slides_section1_17_no_mutation
lecture_slides_section1_18_optional_java_mutation
lecture_slides_section1_19_language_pieces
lecture_slides_section1_1_meta_intro
lecture_slides_section1_2_pl_intro
lecture_slides_section1_3_ML_expressions_and_variable_bindings
lecture_slides_section1_3_our_first_program
lecture_slides_section1_4_rules_for_expressions
lecture_slides_section1_5_errors_fixed
lecture_slides_section1_5_REPL_and_errors
lecture_slides_section1_5_some_errors
lecture_slides_section1_6_shadowing
lecture_slides_section1_6_shadowing
lecture_slides_section1_7_functions
lecture_slides_section1_7_functions_informal
lecture_slides_section1_8_functions_formal
lecture_slides_section1_9_tuples
lecture_slides_section1_9_tuples
lecture_slides_section1_IntBinaryTree
lecture_slides_section2_20_building_new_types
lecture_slides_section2_21_records
lecture_slides_section2_21_records
lecture_slides_section2_22_tuples_as_syntactic_sugar
lecture_slides_section2_22_tuples_as_syntactic_sugar
lecture_slides_section2_23_datatype_bindings
lecture_slides_section2_23_datatype_bindings
lecture_slides_section2_24_case_expressions
lecture_slides_section2_24_case_expressions
lecture_slides_section2_25_useful_datatypes
lecture_slides_section2_25_useful_datatypes
lecture_slides_section2_26_precise_pattern_matching_sofar
lecture_slides_section2_27_type_synonyms
lecture_slides_section2_27_type_synonyms
lecture_slides_section2_28_another_expression_example
lecture_slides_section2_28_another_expression_example
lecture_slides_section2_29_list_and_option_datatypes
lecture_slides_section2_29_list_and_option_datatypes
lecture_slides_section2_30_polymorphic_datatypes
lecture_slides_section2_30_polymorphic_datatypes
lecture_slides_section2_31_eachof_pattern_matching
lecture_slides_section2_31_eachof_pattern_matching
lecture_slides_section2_32_type_inference
lecture_slides_section2_32_type_inference
lecture_slides_section2_33_polymorphic_and_equality_types
lecture_slides_section2_33_polymorphic_and_equality_types
lecture_slides_section2_34_nested_patterns
lecture_slides_section2_34_nested_patterns
lecture_slides_section2_35_more_nested_patterns
lecture_slides_section2_35_more_nested_patterns
lecture_slides_section2_36_nested_patterns_precisely
lecture_slides_section2_37_function_patterns
lecture_slides_section2_37_function_patterns
lecture_slides_section2_38_exceptions
lecture_slides_section2_38_exceptions
lecture_slides_section2_39_tail_recursion
lecture_slides_section2_39_tail_recursion
lecture_slides_section2_40_accumulators
lecture_slides_section2_40_accumulators
lecture_slides_section2_41_tail_recursion_perspective
lecture_slides_section3_42_functions_intro
lecture_slides_section3_42_functions_intro
lecture_slides_section3_43_functions_as_arguments
lecture_slides_section3_43_functions_as_arguments
lecture_slides_section3_44_types_and_functions
lecture_slides_section3_44_types_and_functions
lecture_slides_section3_45_anonymous_functions
lecture_slides_section3_45_anonymous_functions
lecture_slides_section3_46_unnecessary_function_wrapping
lecture_slides_section3_46_unnecessary_function_wrapping
lecture_slides_section3_47_map_and_filter
lecture_slides_section3_47_map_and_filter
lecture_slides_section3_48_generalizing_prior_topics
lecture_slides_section3_48_generalizing_prior_topics
lecture_slides_section3_49_lexical_scope
lecture_slides_section3_49_lexical_scope
lecture_slides_section3_50_lexical_scope_and_functions
lecture_slides_section3_50_lexical_scope_and_functions
lecture_slides_section3_51_why_lexical_scope
lecture_slides_section3_51_why_lexical_scope
lecture_slides_section3_52_closures_and_recomputation
lecture_slides_section3_52_closures_and_recomputation
lecture_slides_section3_53_fold_and_more_closures
lecture_slides_section3_53_fold_and_more_closures
lecture_slides_section3_54_combining_functions
lecture_slides_section3_54_combining_functions
lecture_slides_section3_55_currying
lecture_slides_section3_55_currying
lecture_slides_section3_56_partial_application
lecture_slides_section3_56_partial_application
lecture_slides_section3_57_currying_wrapup
lecture_slides_section3_57_currying_wrapup
lecture_slides_section3_58_mutable_references
lecture_slides_section3_58_mutable_references
lecture_slides_section3_59_callbacks
lecture_slides_section3_59_callbacks
lecture_slides_section3_60_library_docs
lecture_slides_section3_61_adts_with_closures
lecture_slides_section3_61_adts_with_closures
lecture_slides_section3_62_without_closures
lecture_slides_section3_62_without_closures
lecture_slides_section3_63_java_without_closures
lecture_slides_section3_63_java_without_closures
lecture_slides_section3_64_c_without_closures
lecture_slides_section3_64_c_without_closures
lecture_slides_section4_65_section_introduction
lecture_slides_section4_66_what_is_type_inference
lecture_slides_section4_66_what_is_type_inference
lecture_slides_section4_67_ML_type_inference
lecture_slides_section4_67_ml_type_inference
lecture_slides_section4_68_type_inference_examples
lecture_slides_section4_68_type_inference_examples
lecture_slides_section4_69_polymorphic_examples
lecture_slides_section4_69_polymorphic_examples
lecture_slides_section4_70_other_inference
lecture_slides_section4_70_other_inference
lecture_slides_section4_71_mutual_recursion
lecture_slides_section4_71_mutual_recursion
lecture_slides_section4_72_namespace_mgmt
lecture_slides_section4_72_namespace_mgmt
lecture_slides_section4_73_signatures
lecture_slides_section4_73_signatures
lecture_slides_section4_74_module_example
lecture_slides_section4_74_module_example
lecture_slides_section4_75_signatures_for_example
lecture_slides_section4_75_signatures_for_example
lecture_slides_section4_76_signature_matching
lecture_slides_section4_77_equivalent_structure
lecture_slides_section4_77_equivalent_structure
lecture_slides_section4_78_another_equivalent_structure
lecture_slides_section4_78_another_equivalent_structure
lecture_slides_section4_79_modules_different_types
lecture_slides_section4_79_modules_different_types
lecture_slides_section4_80_function_equivalence
lecture_slides_section4_81_standard_equivalences
lecture_slides_section4_82_equivalence_performance
lecture_slides_section5_100_memoization
lecture_slides_section5_100_memoization
lecture_slides_section5_101_macros_intro
lecture_slides_section5_101_macros_intro
lecture_slides_section5_102_three_issues
lecture_slides_section5_103_define_syntax
lecture_slides_section5_103_define_syntax
lecture_slides_section5_104_hygiene
lecture_slides_section5_105_macro_examples
lecture_slides_section5_105_macro_examples
lecture_slides_section5_83_racket_intro
lecture_slides_section5_83_racket_intro
lecture_slides_section5_84_racket_basics
lecture_slides_section5_84_racket_basics
lecture_slides_section5_85_racket_lists
lecture_slides_section5_85_racket_lists
lecture_slides_section5_86_syntax_and_parens
lecture_slides_section5_87_parens_matter
lecture_slides_section5_87_parens_matter
lecture_slides_section5_88_dynamic_typing
lecture_slides_section5_88_dynamic_typing
lecture_slides_section5_89_cond
lecture_slides_section5_89_cond
lecture_slides_section5_90_local_bindings
lecture_slides_section5_90_local_bindings
lecture_slides_section5_91_toplevel_bindings
lecture_slides_section5_91_toplevel_bindings
lecture_slides_section5_92_setbang
lecture_slides_section5_92_setbang
lecture_slides_section5_93_truth_about_cons
lecture_slides_section5_93_truth_about_cons
lecture_slides_section5_94_mcons
lecture_slides_section5_94_mcons
lecture_slides_section5_95_thunks
lecture_slides_section5_95_thunks
lecture_slides_section5_96_avoid_unnecessary
lecture_slides_section5_96_avoid_unnecessary
lecture_slides_section5_97_delay_force
lecture_slides_section5_97_delay_force
lecture_slides_section5_98_using_streams
lecture_slides_section5_98_using_streams
lecture_slides_section5_99_defining_streams
lecture_slides_section5_99_defining_streams
lecture_slides_section6_106_section_topics
lecture_slides_section6_107_datatypes_without_structs
lecture_slides_section6_107_datatypes_without_structs
lecture_slides_section6_107_datatypes_without_structs
lecture_slides_section6_108_datatypes_with_structs
lecture_slides_section6_108_datatypes_with_structs
lecture_slides_section6_109_why_structs
lecture_slides_section6_110_implement_a_language
lecture_slides_section6_111_interpreter_assumptions
lecture_slides_section6_111_interpreter_assumptions
lecture_slides_section6_112_implementing_variables
lecture_slides_section6_113_implementing_closures
lecture_slides_section6_114_closures_efficient
lecture_slides_section6_115_macros_via_functions
lecture_slides_section6_115_macros_via_functions
lecture_slides_section6_116_ml_vs_racket
lecture_slides_section6_117_what_is_static_checking
lecture_slides_section6_118_soundness_completeness
lecture_slides_section6_119_weak_typing
lecture_slides_section6_120_static_vs_dynamic_one
lecture_slides_section6_120_static_vs_dynamic_one
lecture_slides_section6_120_static_vs_dynamic_one
lecture_slides_section6_121_static_vs_dynamic_two
lecture_slides_section6_122_eval
lecture_slides_section6_122_eval
lecture_slides_section7_123_ruby_intro
lecture_slides_section7_123_ruby_intro
lecture_slides_section7_124_classes_objects
lecture_slides_section7_124_classes_objects
lecture_slides_section7_125_object_state
lecture_slides_section7_125_object_state
lecture_slides_section7_126_visibility
lecture_slides_section7_127_example
lecture_slides_section7_127_example
lecture_slides_section7_128_all_objects
lecture_slides_section7_129_classes_dynamic
lecture_slides_section7_129_classes_dynamic
lecture_slides_section7_130_duck_typing
lecture_slides_section7_131_arrays
lecture_slides_section7_131_arrays
lecture_slides_section7_132_blocks
lecture_slides_section7_132_blocks
lecture_slides_section7_133_using_blocks
lecture_slides_section7_133_using_blocks
lecture_slides_section7_134_procs
lecture_slides_section7_134_procs
lecture_slides_section7_135_hashes_ranges
lecture_slides_section7_135_hashes_ranges
lecture_slides_section7_136_subclassing
lecture_slides_section7_136_subclassing
lecture_slides_section7_137_why_subclassing
lecture_slides_section7_138_overriding
lecture_slides_section7_138_overriding
lecture_slides_section7_139_method_lookup
lecture_slides_section7_140_dynamic_dispatch_vs_closures
lecture_slides_section7_140_dynamic_dispatch_vs_closures
lecture_slides_section7_140_dynamic_dispatch_vs_closures
lecture_slides_section7_141_manual_dynamic_dispatch
lecture_slides_section7_141_manual_dynamic_dispatch
lecture_slides_section8_142_fp_oo_decomposition
lecture_slides_section8_142_fp_oo_decomposition
lecture_slides_section8_142_fp_oo_decomposition
lecture_slides_section8_142_fp_oo_decomposition
lecture_slides_section8_143_adding_operations_or_variants
lecture_slides_section8_143_adding_operations_or_variants
lecture_slides_section8_143_adding_operations_or_variants
lecture_slides_section8_143_adding_operations_or_variants
lecture_slides_section8_144_binary_methods_fp
lecture_slides_section8_144_binary_methods_fp
lecture_slides_section8_145_double_dispatch
lecture_slides_section8_145_double_dispatch
lecture_slides_section8_145_double_dispatch
lecture_slides_section8_146_multimethods
lecture_slides_section8_147_multiple_inheritance
lecture_slides_section8_147_multiple_inheritance
lecture_slides_section8_148_mixins
lecture_slides_section8_148_mixins
lecture_slides_section8_149_interfaces
lecture_slides_section8_150_abstract_methods
lecture_slides_section8_151_subtyping
lecture_slides_section8_152_subtype_relation
lecture_slides_section8_153_depth_subtyping
lecture_slides_section8_154_java_arrays
lecture_slides_section8_155_function_subtyping
lecture_slides_section8_156_object_subtyping
lecture_slides_section8_157_generics_versus_subtyping
lecture_slides_section8_158_bounded_polymorphism
lecture_slides_section8_section8sum
lecture_slides_sectionMotivation_m1_motivation_intro
lecture_slides_sectionMotivation_m2_motivation_general
lecture_slides_sectionMotivation_m3_pls_the_same
lecture_slides_sectionMotivation_m4_why_functional
lecture_slides_sectionMotivation_m5_why_these_languages

حجم فایل: 2GB

آیا این نوشته را دوست داشتید؟
University of Washington Programming Languages

پیشنهاد فرادرس